Mercurial > emacs
comparison src/xdisp.c @ 21748:c423e8929f69
(Qinhibit_point_motion_hooks): New variable.
(syms_of_xdisp): Init and staticpro it.
(redisplay_window): Bind the symbol to t.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 24 Apr 1998 06:28:46 +0000 |
parents | 7784f9b030a8 |
children | 697991d2a2c4 |
comparison
equal
deleted
inserted
replaced
21747:c11ef8945466 | 21748:c423e8929f69 |
---|---|
62 extern Lisp_Object Voverriding_local_map_menu_flag; | 62 extern Lisp_Object Voverriding_local_map_menu_flag; |
63 | 63 |
64 Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map; | 64 Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map; |
65 Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions; | 65 Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions; |
66 Lisp_Object Qredisplay_end_trigger_functions; | 66 Lisp_Object Qredisplay_end_trigger_functions; |
67 Lisp_Object Qinhibit_point_motion_hooks; | |
67 | 68 |
68 /* Nonzero means print newline to stdout before next minibuffer message. */ | 69 /* Nonzero means print newline to stdout before next minibuffer message. */ |
69 | 70 |
70 int noninteractive_need_newline; | 71 int noninteractive_need_newline; |
71 | 72 |
1743 int opoint_byte = PT_BYTE; | 1744 int opoint_byte = PT_BYTE; |
1744 int tem; | 1745 int tem; |
1745 int update_mode_line; | 1746 int update_mode_line; |
1746 struct Lisp_Char_Table *dp = window_display_table (w); | 1747 struct Lisp_Char_Table *dp = window_display_table (w); |
1747 int really_switched_buffer = 0; | 1748 int really_switched_buffer = 0; |
1749 int count = specpdl_ptr - specpdl; | |
1748 | 1750 |
1749 if (Z == Z_BYTE && lpoint != lpoint_byte) | 1751 if (Z == Z_BYTE && lpoint != lpoint_byte) |
1750 abort (); | 1752 abort (); |
1751 if (lpoint_byte < lpoint) | 1753 if (lpoint_byte < lpoint) |
1752 abort (); | 1754 abort (); |
1765 redisplay_windows (w->hchild, preserve_echo_area); | 1767 redisplay_windows (w->hchild, preserve_echo_area); |
1766 return; | 1768 return; |
1767 } | 1769 } |
1768 if (NILP (w->buffer)) | 1770 if (NILP (w->buffer)) |
1769 abort (); | 1771 abort (); |
1770 | 1772 |
1773 specbind (Qinhibit_point_motion_hooks, Qt); | |
1774 | |
1771 height = window_internal_height (w); | 1775 height = window_internal_height (w); |
1772 update_mode_line = (!NILP (w->update_mode_line) || update_mode_lines); | 1776 update_mode_line = (!NILP (w->update_mode_line) || update_mode_lines); |
1773 if (XBUFFER (w->buffer)->clip_changed) | 1777 if (XBUFFER (w->buffer)->clip_changed) |
1774 update_mode_line = 1; | 1778 update_mode_line = 1; |
1775 | 1779 |
2445 if (really_switched_buffer) | 2449 if (really_switched_buffer) |
2446 set_buffer_internal_1 (old); | 2450 set_buffer_internal_1 (old); |
2447 else | 2451 else |
2448 set_buffer_temp (old); | 2452 set_buffer_temp (old); |
2449 TEMP_SET_PT_BOTH (lpoint, lpoint_byte); | 2453 TEMP_SET_PT_BOTH (lpoint, lpoint_byte); |
2454 | |
2455 unbind_to (count, Qnil); | |
2450 } | 2456 } |
2451 | 2457 |
2452 /* Do full redisplay on one window, starting at position `pos'. */ | 2458 /* Do full redisplay on one window, starting at position `pos'. */ |
2453 | 2459 |
2454 static void | 2460 static void |
5360 Qwindow_scroll_functions = intern ("window-scroll-functions"); | 5366 Qwindow_scroll_functions = intern ("window-scroll-functions"); |
5361 | 5367 |
5362 staticpro (&Qredisplay_end_trigger_functions); | 5368 staticpro (&Qredisplay_end_trigger_functions); |
5363 Qredisplay_end_trigger_functions = intern ("redisplay-end-trigger-functions"); | 5369 Qredisplay_end_trigger_functions = intern ("redisplay-end-trigger-functions"); |
5364 | 5370 |
5371 staticpro (&Qinhibit_point_motion_hooks); | |
5372 Qinhibit_point_motion_hooks = intern ("inhibit-point-motion-hooks"); | |
5373 | |
5365 staticpro (&last_arrow_position); | 5374 staticpro (&last_arrow_position); |
5366 staticpro (&last_arrow_string); | 5375 staticpro (&last_arrow_string); |
5367 last_arrow_position = Qnil; | 5376 last_arrow_position = Qnil; |
5368 last_arrow_string = Qnil; | 5377 last_arrow_string = Qnil; |
5369 | 5378 |