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);
 	}