aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMiles Bader2005-02-02 01:54:00 +0000
committerMiles Bader2005-02-02 01:54:00 +0000
commitf3d3402885646e6fa79f1ad59fb8a1f9017851d7 (patch)
tree0d381cd0e2eb41edd55d4473bcaaab4053e69468 /src
parent0d2e792ea9c1a983937e016f7f97cc64f2013603 (diff)
parentf2433a30c5c6fa307ae1358c15e65e484989e5b4 (diff)
downloademacs-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/ChangeLog35
-rw-r--r--src/buffer.c8
-rw-r--r--src/casetab.c2
-rw-r--r--src/macterm.c14
-rw-r--r--src/undo.c43
-rw-r--r--src/xdisp.c1
-rw-r--r--src/xfns.c8
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 @@
12005-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
62005-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
152005-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
202005-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
252005-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
302005-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
12005-01-28 Stefan Monnier <monnier@iro.umontreal.ca> 362005-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
5798was modified between BEG and END. PROPERTY is the property name, 5798was modified between BEG and END. PROPERTY is the property name,
5799and VALUE is the old value. 5799and VALUE is the old value.
5800 5800
5801An entry (apply FUN-NAME . ARGS) means undo the change with
5802\(apply FUN-NAME ARGS).
5803
5804An entry (apply DELTA BEG END FUN-NAME . ARGS) supports selective undo
5805in the active region. BEG and END is the range affected by this entry
5806and DELTA is the number of bytes added or deleted in that range by
5807this change.
5808
5801An entry (MARKER . DISTANCE) indicates that the marker MARKER 5809An entry (MARKER . DISTANCE) indicates that the marker MARKER
5802was adjusted in position by the offset DISTANCE (an integer). 5810was 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
18the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19Boston, MA 02111-1307, USA. */ 19Boston, 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. */); 9931useful 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 9937mouse button, the click will register as mouse-2 and while the
9938 command-key is held down, the click will register as mouse-3. 9938command-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 9940and the command-key will register for mouse-2. nil means that
9941 not emulation should be done and the modifiers should be placed 9941no emulation should be done and the modifiers should be placed
9942 on the mouse-1 event. */); 9942on 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
41Lisp_Object Qinhibit_read_only; 41Lisp_Object Qinhibit_read_only;
42 42
43/* Marker for function call undo list elements. */
44
45Lisp_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
593void 617void
594syms_of_undo () 618syms_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.
629At garbage collection time, if the current command has produced 656At garbage collection time, if the current command has produced
630more than this much undo information, it asks you whether to delete 657more than this much undo information, it discards the info and displays
631the information. This is a last-ditch limit to prevent memory overflow. 658a warning. This is a last-ditch limit to prevent memory overflow.
632 659
633The size is counted as the number of bytes occupied, 660The size is counted as the number of bytes occupied, which includes
634which includes both saved text and other data. 661both saved text and other data. A value of nil means no limit. In
662this case, accumulating one huge undo entry could make Emacs crash as
663a result of memory overflow.
635 664
636In fact, this calls the function which is the value of 665In 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.
638The text above describes the behavior of the function 667The text above describes the behavior of the function
639that variable usually specifies. */); 668that 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,