Mercurial > emacs
diff src/dispnew.c @ 59580:f43d0816e9c3
* keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
(READABLE_EVENTS_FILTER_EVENTS)
(READABLE_EVENTS_IGNORE_SQUEEZABLES): New flags for readable_events.
get_filtered_input_pending, readable_filtered_events): Removed.
(tracking_off): Call readable_events and get_input_pending with
flag READABLE_EVENTS_DO_TIMERS_NOW.
(readable_events): Move code from old readable_filtered_events here,
but check new READABLE_EVENTS_* in argument flags instead of previous
two boolean arguments do_timers_now and filter_events.
If we are doing mouse tracking and the mouse moved, return only if
READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
(swallow_events): Call get_input_pending with flag
READABLE_EVENTS_DO_TIMERS_NOW.
(get_input_pending): Move code from old get_filtered_input_pending
here. Replace boolean arguments do_timers_now, filter_events with
flags, and pass flags to readable_events. Document new
READABLE_EVENTS_* flags.
(detect_input_pending_ignore_squeezables): New function.
(detect_input_pending_run_timers): Call get_input_pending with flag
READABLE_EVENTS_DO_TIMERS_NOW.
(Finput_pending_p): Call get_input_pending with flags
READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
* dispnew.c (update_window, update_frame_1): Replace calls to
detect_input_pending with detect_input_pending_ignore_squeezables
so that redisplay is not paused if the event queue contains only
mouse movements.
* lisp.h: Declare detect_input_pending_ignore_squeezables.
author | Jan Djärv <jan.h.d@swipnet.se> |
---|---|
date | Sun, 16 Jan 2005 09:17:02 +0000 |
parents | 59945307b86b |
children | c0533d2d03af |
line wrap: on
line diff
--- a/src/dispnew.c Sun Jan 16 02:37:50 2005 +0000 +++ b/src/dispnew.c Sun Jan 16 09:17:02 2005 +0000 @@ -4075,7 +4075,7 @@ if (redisplay_dont_pause) force_p = 1; else - detect_input_pending (); + detect_input_pending_ignore_squeezables (); /* If forced to complete the update, or if no input is pending, do the update. */ @@ -4149,7 +4149,7 @@ scrolling large windows with repeated scroll-up commands will too quickly pause redisplay. */ if (!force_p && ++n_updated % preempt_count == 0) - detect_input_pending (); + detect_input_pending_ignore_squeezables (); changed_p |= update_window_line (w, vpos, &mouse_face_overwritten_p); @@ -5093,7 +5093,7 @@ if (redisplay_dont_pause) force_p = 1; - else if (!force_p && detect_input_pending ()) + else if (!force_p && detect_input_pending_ignore_squeezables ()) { pause = 1; goto do_pause; @@ -5149,7 +5149,7 @@ } if ((i - 1) % preempt_count == 0) - detect_input_pending (); + detect_input_pending_ignore_squeezables (); update_frame_line (f, i); }