diff options
| author | Miles Bader | 2005-02-02 01:54:00 +0000 |
|---|---|---|
| committer | Miles Bader | 2005-02-02 01:54:00 +0000 |
| commit | f3d3402885646e6fa79f1ad59fb8a1f9017851d7 (patch) | |
| tree | 0d381cd0e2eb41edd55d4473bcaaab4053e69468 /src | |
| parent | 0d2e792ea9c1a983937e016f7f97cc64f2013603 (diff) | |
| parent | f2433a30c5c6fa307ae1358c15e65e484989e5b4 (diff) | |
| download | emacs-f3d3402885646e6fa79f1ad59fb8a1f9017851d7.tar.gz emacs-f3d3402885646e6fa79f1ad59fb8a1f9017851d7.zip | |
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-10
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-59
- miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-68
Update from CVS
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 35 | ||||
| -rw-r--r-- | src/buffer.c | 8 | ||||
| -rw-r--r-- | src/casetab.c | 2 | ||||
| -rw-r--r-- | src/macterm.c | 14 | ||||
| -rw-r--r-- | src/undo.c | 43 | ||||
| -rw-r--r-- | src/xdisp.c | 1 | ||||
| -rw-r--r-- | src/xfns.c | 8 |
7 files changed, 94 insertions, 17 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3bb83dc10e2..397a34f1be4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,38 @@ | |||
| 1 | 2005-02-01 Kim F. Storm <storm@cua.dk> | ||
| 2 | |||
| 3 | * xdisp.c (back_to_previous_visible_line_start): Reset iterator | ||
| 4 | stack before calling handle_display_prop. | ||
| 5 | |||
| 6 | 2005-01-31 Kim F. Storm <storm@cua.dk> | ||
| 7 | |||
| 8 | * undo.c (Qapply): New lisp var. | ||
| 9 | (syms_of_undo): Intern and staticpro it. | ||
| 10 | (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and | ||
| 11 | (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS). | ||
| 12 | |||
| 13 | * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix. | ||
| 14 | |||
| 15 | 2005-01-30 Jesper Harder <harder@phys.au.dk> | ||
| 16 | |||
| 17 | * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta> | ||
| 18 | <mac-emulate-three-button-mouse>: Fix docstring indentation. | ||
| 19 | |||
| 20 | 2005-01-29 Luc Teirlinck <teirllm@auburn.edu> | ||
| 21 | |||
| 22 | * undo.c (syms_of_undo) <undo-outer-limit>: Doc update. | ||
| 23 | Increase value to 3 Meg. | ||
| 24 | |||
| 25 | 2005-01-29 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | ||
| 26 | |||
| 27 | * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK, | ||
| 28 | button events are not received otherwise. | ||
| 29 | |||
| 30 | 2005-01-29 Richard M. Stallman <rms@gnu.org> | ||
| 31 | |||
| 32 | * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix. | ||
| 33 | |||
| 34 | * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME. | ||
| 35 | |||
| 1 | 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca> | 36 | 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 37 | ||
| 3 | * keymap.c (access_keymap): YAILOM. | 38 | * keymap.c (access_keymap): YAILOM. |
diff --git a/src/buffer.c b/src/buffer.c index e0fde514ca4..d869388ec72 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -5798,6 +5798,14 @@ An entry (nil PROPERTY VALUE BEG . END) indicates that a text property | |||
| 5798 | was modified between BEG and END. PROPERTY is the property name, | 5798 | was modified between BEG and END. PROPERTY is the property name, |
| 5799 | and VALUE is the old value. | 5799 | and VALUE is the old value. |
| 5800 | 5800 | ||
| 5801 | An entry (apply FUN-NAME . ARGS) means undo the change with | ||
| 5802 | \(apply FUN-NAME ARGS). | ||
| 5803 | |||
| 5804 | An entry (apply DELTA BEG END FUN-NAME . ARGS) supports selective undo | ||
| 5805 | in the active region. BEG and END is the range affected by this entry | ||
| 5806 | and DELTA is the number of bytes added or deleted in that range by | ||
| 5807 | this change. | ||
| 5808 | |||
| 5801 | An entry (MARKER . DISTANCE) indicates that the marker MARKER | 5809 | An entry (MARKER . DISTANCE) indicates that the marker MARKER |
| 5802 | was adjusted in position by the offset DISTANCE (an integer). | 5810 | was adjusted in position by the offset DISTANCE (an integer). |
| 5803 | 5811 | ||
diff --git a/src/casetab.c b/src/casetab.c index af0b238029a..63f29666a50 100644 --- a/src/casetab.c +++ b/src/casetab.c | |||
| @@ -18,7 +18,7 @@ along with GNU Emacs; see the file COPYING. If not, write to | |||
| 18 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 18 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
| 19 | Boston, MA 02111-1307, USA. */ | 19 | Boston, MA 02111-1307, USA. */ |
| 20 | 20 | ||
| 21 | /* Written by Howard Gayle. See chartab.c for details. */ | 21 | /* Written by Howard Gayle. */ |
| 22 | 22 | ||
| 23 | #include <config.h> | 23 | #include <config.h> |
| 24 | #include "lisp.h" | 24 | #include "lisp.h" |
diff --git a/src/macterm.c b/src/macterm.c index aeed88013e5..5a7db8e04e2 100644 --- a/src/macterm.c +++ b/src/macterm.c | |||
| @@ -9928,18 +9928,18 @@ nil then the key will act as the normal Mac option modifier. */); | |||
| 9928 | 9928 | ||
| 9929 | DEFVAR_LISP ("mac-reverse-ctrl-meta", &Vmac_reverse_ctrl_meta, | 9929 | DEFVAR_LISP ("mac-reverse-ctrl-meta", &Vmac_reverse_ctrl_meta, |
| 9930 | doc: /* Non-nil means that the control and meta keys are reversed. This is | 9930 | doc: /* Non-nil means that the control and meta keys are reversed. This is |
| 9931 | useful for non-standard keyboard layouts. */); | 9931 | useful for non-standard keyboard layouts. */); |
| 9932 | Vmac_reverse_ctrl_meta = Qnil; | 9932 | Vmac_reverse_ctrl_meta = Qnil; |
| 9933 | 9933 | ||
| 9934 | DEFVAR_LISP ("mac-emulate-three-button-mouse", | 9934 | DEFVAR_LISP ("mac-emulate-three-button-mouse", |
| 9935 | &Vmac_emulate_three_button_mouse, | 9935 | &Vmac_emulate_three_button_mouse, |
| 9936 | doc: /* t means that when the option-key is held down while pressing the | 9936 | doc: /* t means that when the option-key is held down while pressing the |
| 9937 | mouse button, the click will register as mouse-2 and while the | 9937 | mouse button, the click will register as mouse-2 and while the |
| 9938 | command-key is held down, the click will register as mouse-3. | 9938 | command-key is held down, the click will register as mouse-3. |
| 9939 | 'reverse means that the the option-key will register for mouse-3 | 9939 | 'reverse means that the the option-key will register for mouse-3 |
| 9940 | and the command-key will register for mouse-2. nil means that | 9940 | and the command-key will register for mouse-2. nil means that |
| 9941 | not emulation should be done and the modifiers should be placed | 9941 | no emulation should be done and the modifiers should be placed |
| 9942 | on the mouse-1 event. */); | 9942 | on the mouse-1 event. */); |
| 9943 | Vmac_emulate_three_button_mouse = Qnil; | 9943 | Vmac_emulate_three_button_mouse = Qnil; |
| 9944 | 9944 | ||
| 9945 | #if USE_CARBON_EVENTS | 9945 | #if USE_CARBON_EVENTS |
diff --git a/src/undo.c b/src/undo.c index df4b8d08cd6..ea4f35397a9 100644 --- a/src/undo.c +++ b/src/undo.c | |||
| @@ -40,6 +40,10 @@ Lisp_Object last_undo_buffer; | |||
| 40 | 40 | ||
| 41 | Lisp_Object Qinhibit_read_only; | 41 | Lisp_Object Qinhibit_read_only; |
| 42 | 42 | ||
| 43 | /* Marker for function call undo list elements. */ | ||
| 44 | |||
| 45 | Lisp_Object Qapply; | ||
| 46 | |||
| 43 | /* The first time a command records something for undo. | 47 | /* The first time a command records something for undo. |
| 44 | it also allocates the undo-boundary object | 48 | it also allocates the undo-boundary object |
| 45 | which will be added to the list at the end of the command. | 49 | which will be added to the list at the end of the command. |
| @@ -519,7 +523,7 @@ Return what remains of the list. */) | |||
| 519 | } | 523 | } |
| 520 | else if (EQ (car, Qnil)) | 524 | else if (EQ (car, Qnil)) |
| 521 | { | 525 | { |
| 522 | /* Element (nil prop val beg . end) is property change. */ | 526 | /* Element (nil PROP VAL BEG . END) is property change. */ |
| 523 | Lisp_Object beg, end, prop, val; | 527 | Lisp_Object beg, end, prop, val; |
| 524 | 528 | ||
| 525 | prop = Fcar (cdr); | 529 | prop = Fcar (cdr); |
| @@ -543,6 +547,26 @@ Return what remains of the list. */) | |||
| 543 | Fgoto_char (car); | 547 | Fgoto_char (car); |
| 544 | Fdelete_region (car, cdr); | 548 | Fdelete_region (car, cdr); |
| 545 | } | 549 | } |
| 550 | else if (EQ (car, Qapply)) | ||
| 551 | { | ||
| 552 | Lisp_Object oldlist = current_buffer->undo_list; | ||
| 553 | /* Element (apply FUNNAME . ARGS) means call FUNNAME to undo. */ | ||
| 554 | car = Fcar (cdr); | ||
| 555 | if (INTEGERP (car)) | ||
| 556 | { | ||
| 557 | /* Long format: (apply DELTA START END FUNNAME . ARGS). */ | ||
| 558 | cdr = Fcdr (Fcdr (Fcdr (cdr))); | ||
| 559 | car = Fcar (cdr); | ||
| 560 | } | ||
| 561 | cdr = Fcdr (cdr); | ||
| 562 | apply1 (car, cdr); | ||
| 563 | /* Make sure this produces at least one undo entry, | ||
| 564 | so the test in `undo' for continuing an undo series | ||
| 565 | will work right. */ | ||
| 566 | if (EQ (oldlist, current_buffer->undo_list)) | ||
| 567 | current_buffer->undo_list | ||
| 568 | = Fcons (list2 (Qcdr, Qnil), current_buffer->undo_list); | ||
| 569 | } | ||
| 546 | else if (STRINGP (car) && INTEGERP (cdr)) | 570 | else if (STRINGP (car) && INTEGERP (cdr)) |
| 547 | { | 571 | { |
| 548 | /* Element (STRING . POS) means STRING was deleted. */ | 572 | /* Element (STRING . POS) means STRING was deleted. */ |
| @@ -589,13 +613,16 @@ Return what remains of the list. */) | |||
| 589 | UNGCPRO; | 613 | UNGCPRO; |
| 590 | return unbind_to (count, list); | 614 | return unbind_to (count, list); |
| 591 | } | 615 | } |
| 592 | 616 | ||
| 593 | void | 617 | void |
| 594 | syms_of_undo () | 618 | syms_of_undo () |
| 595 | { | 619 | { |
| 596 | Qinhibit_read_only = intern ("inhibit-read-only"); | 620 | Qinhibit_read_only = intern ("inhibit-read-only"); |
| 597 | staticpro (&Qinhibit_read_only); | 621 | staticpro (&Qinhibit_read_only); |
| 598 | 622 | ||
| 623 | Qapply = intern ("apply"); | ||
| 624 | staticpro (&Qapply); | ||
| 625 | |||
| 599 | pending_boundary = Qnil; | 626 | pending_boundary = Qnil; |
| 600 | staticpro (&pending_boundary); | 627 | staticpro (&pending_boundary); |
| 601 | 628 | ||
| @@ -627,17 +654,19 @@ which includes both saved text and other data. */); | |||
| 627 | DEFVAR_LISP ("undo-outer-limit", &Vundo_outer_limit, | 654 | DEFVAR_LISP ("undo-outer-limit", &Vundo_outer_limit, |
| 628 | doc: /* Outer limit on size of undo information for one command. | 655 | doc: /* Outer limit on size of undo information for one command. |
| 629 | At garbage collection time, if the current command has produced | 656 | At garbage collection time, if the current command has produced |
| 630 | more than this much undo information, it asks you whether to delete | 657 | more than this much undo information, it discards the info and displays |
| 631 | the information. This is a last-ditch limit to prevent memory overflow. | 658 | a warning. This is a last-ditch limit to prevent memory overflow. |
| 632 | 659 | ||
| 633 | The size is counted as the number of bytes occupied, | 660 | The size is counted as the number of bytes occupied, which includes |
| 634 | which includes both saved text and other data. | 661 | both saved text and other data. A value of nil means no limit. In |
| 662 | this case, accumulating one huge undo entry could make Emacs crash as | ||
| 663 | a result of memory overflow. | ||
| 635 | 664 | ||
| 636 | In fact, this calls the function which is the value of | 665 | In fact, this calls the function which is the value of |
| 637 | `undo-outer-limit-function' with one argument, the size. | 666 | `undo-outer-limit-function' with one argument, the size. |
| 638 | The text above describes the behavior of the function | 667 | The text above describes the behavior of the function |
| 639 | that variable usually specifies. */); | 668 | that variable usually specifies. */); |
| 640 | Vundo_outer_limit = make_number (300000); | 669 | Vundo_outer_limit = make_number (3000000); |
| 641 | 670 | ||
| 642 | DEFVAR_LISP ("undo-outer-limit-function", &Vundo_outer_limit_function, | 671 | DEFVAR_LISP ("undo-outer-limit-function", &Vundo_outer_limit_function, |
| 643 | doc: /* Function to call when an undo list exceeds `undo-outer-limit'. | 672 | doc: /* Function to call when an undo list exceeds `undo-outer-limit'. |
diff --git a/src/xdisp.c b/src/xdisp.c index 7d7e510892b..31a6074b61f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -4799,6 +4799,7 @@ back_to_previous_visible_line_start (it) | |||
| 4799 | int beg, end; | 4799 | int beg, end; |
| 4800 | Lisp_Object val, overlay; | 4800 | Lisp_Object val, overlay; |
| 4801 | 4801 | ||
| 4802 | it2.sp = 0; | ||
| 4802 | if (handle_display_prop (&it2) == HANDLED_RETURN | 4803 | if (handle_display_prop (&it2) == HANDLED_RETURN |
| 4803 | && !NILP (val = get_char_property_and_overlay | 4804 | && !NILP (val = get_char_property_and_overlay |
| 4804 | (make_number (pos), Qdisplay, Qnil, &overlay)) | 4805 | (make_number (pos), Qdisplay, Qnil, &overlay)) |
diff --git a/src/xfns.c b/src/xfns.c index f8829562174..2bb5fa31327 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -4323,11 +4323,15 @@ show_hourglass (timer) | |||
| 4323 | { | 4323 | { |
| 4324 | unsigned long mask = CWCursor; | 4324 | unsigned long mask = CWCursor; |
| 4325 | XSetWindowAttributes attrs; | 4325 | XSetWindowAttributes attrs; |
| 4326 | 4326 | #ifdef USE_GTK | |
| 4327 | Window parent = FRAME_X_WINDOW (f); | ||
| 4328 | #else | ||
| 4329 | Window parent = FRAME_OUTER_WINDOW (f); | ||
| 4330 | #endif | ||
| 4327 | attrs.cursor = f->output_data.x->hourglass_cursor; | 4331 | attrs.cursor = f->output_data.x->hourglass_cursor; |
| 4328 | 4332 | ||
| 4329 | f->output_data.x->hourglass_window | 4333 | f->output_data.x->hourglass_window |
| 4330 | = XCreateWindow (dpy, FRAME_OUTER_WINDOW (f), | 4334 | = XCreateWindow (dpy, parent, |
| 4331 | 0, 0, 32000, 32000, 0, 0, | 4335 | 0, 0, 32000, 32000, 0, 0, |
| 4332 | InputOnly, | 4336 | InputOnly, |
| 4333 | CopyFromParent, | 4337 | CopyFromParent, |