mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-06 20:00:46 -08:00
* src/keyboard.c (swallow_events): Don't redisplay if there's input pending.
This commit is contained in:
parent
92bad2aa05
commit
ec10ba2792
4 changed files with 11 additions and 7 deletions
|
|
@ -1,3 +1,7 @@
|
|||
2014-12-17 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* keyboard.c (swallow_events): Don't redisplay if there's input pending.
|
||||
|
||||
2014-12-17 Ulf Jasper <ulf.jasper@web.de>
|
||||
|
||||
* image.c (svg_load): Watch out for nil value of current buffer's
|
||||
|
|
|
|||
|
|
@ -5785,7 +5785,7 @@ immediately by pending input. */)
|
|||
{
|
||||
ptrdiff_t count;
|
||||
|
||||
swallow_events (1);
|
||||
swallow_events (true);
|
||||
if ((detect_input_pending_run_timers (1)
|
||||
&& NILP (force) && !redisplay_dont_pause)
|
||||
|| !NILP (Vexecuting_kbd_macro))
|
||||
|
|
|
|||
|
|
@ -2582,7 +2582,7 @@ read_char (int commandflag, Lisp_Object map,
|
|||
user-visible, such as X selection_request events. */
|
||||
if (input_pending
|
||||
|| detect_input_pending_run_timers (0))
|
||||
swallow_events (0); /* May clear input_pending. */
|
||||
swallow_events (false); /* May clear input_pending. */
|
||||
|
||||
/* Redisplay if no pending input. */
|
||||
while (!input_pending)
|
||||
|
|
@ -2598,7 +2598,7 @@ read_char (int commandflag, Lisp_Object map,
|
|||
|
||||
/* Input arrived and pre-empted redisplay.
|
||||
Process any events which are not user-visible. */
|
||||
swallow_events (0);
|
||||
swallow_events (false);
|
||||
/* If that cleared input_pending, try again to redisplay. */
|
||||
}
|
||||
|
||||
|
|
@ -4370,7 +4370,7 @@ swallow_events (bool do_display)
|
|||
old_timers_run = timers_run;
|
||||
get_input_pending (READABLE_EVENTS_DO_TIMERS_NOW);
|
||||
|
||||
if (timers_run != old_timers_run && do_display)
|
||||
if (!input_pending && timers_run != old_timers_run && do_display)
|
||||
redisplay_preserve_echo_area (7);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4473,7 +4473,7 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
|
|||
&& ! EQ (wait_proc->status, Qrun)
|
||||
&& ! EQ (wait_proc->status, Qconnect))
|
||||
{
|
||||
bool read_some_bytes = 0;
|
||||
bool read_some_bytes = false;
|
||||
|
||||
clear_waiting_for_input ();
|
||||
XSETPROCESS (proc, wait_proc);
|
||||
|
|
@ -4689,13 +4689,13 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
|
|||
unsigned old_timers_run = timers_run;
|
||||
struct buffer *old_buffer = current_buffer;
|
||||
Lisp_Object old_window = selected_window;
|
||||
bool leave = 0;
|
||||
bool leave = false;
|
||||
|
||||
if (detect_input_pending_run_timers (do_display))
|
||||
{
|
||||
swallow_events (do_display);
|
||||
if (detect_input_pending_run_timers (do_display))
|
||||
leave = 1;
|
||||
leave = true;
|
||||
}
|
||||
|
||||
/* If a timer has run, this might have changed buffers
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue