Mercurial > emacs
diff src/keyboard.c @ 67820:a9cbddeec059
(last_point_position_window): New variable.
(command_loop_1): Set last_point_position_window.
(syms_of_keyboard): Init it.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 26 Dec 2005 16:31:36 +0000 |
parents | 61bd8643b908 |
children | bd5ef7de54da ec395f552d45 7beb78bc1f8e |
line wrap: on
line diff
--- a/src/keyboard.c Mon Dec 26 16:30:21 2005 +0000 +++ b/src/keyboard.c Mon Dec 26 16:31:36 2005 +0000 @@ -381,12 +381,15 @@ command is stored in this-original-command. It is nil otherwise. */ Lisp_Object Vthis_original_command; -/* The value of point when the last command was executed. */ +/* The value of point when the last command was started. */ int last_point_position; /* The buffer that was current when the last command was started. */ Lisp_Object last_point_position_buffer; +/* The window that was selected when the last command was started. */ +Lisp_Object last_point_position_window; + /* The frame in which the last input event occurred, or Qmacro if the last event came from a macro. We use this to determine when to generate switch-frame events. This may be cleared by functions @@ -1581,6 +1584,7 @@ prev_buffer = current_buffer; prev_modiff = MODIFF; last_point_position = PT; + last_point_position_window = selected_window; XSETBUFFER (last_point_position_buffer, prev_buffer); /* By default, we adjust point to a boundary of a region that @@ -10985,6 +10989,7 @@ Fset (Qinput_method_use_echo_area, Qnil); last_point_position_buffer = Qnil; + last_point_position_window = Qnil; { struct event_head *p;