Richard Stallman <[EMAIL PROTECTED]> writes:
> > And (B) is what you get by setting `redisplay-dont-pause'.
> >
> > It WAS, but not any more.
>
> It still IS, since redisplay-dont-pause _also_ controls whether input
> interrupts redisplay.
>
> No, what redisplay-dont-pause gives you is NOT (B).
> (B) says that redisplay still only starts when there is no input,
> and thanks to the recent change in sit-for, that is not what
> redisplay-dont-pause does nowadays.
I guess you are confused by the mixed-purpose of redisplay-dont-pause ...
it controls whether redisplay is started in sit-for (A), and whether
redisplay is pre-empted once it is started (B).
To repeat, (B) says:
(B) Don't _interrupt_ redisplay once it has started.
And this definitely _is_ (part of) what you get by setting redisplay_dont_pause.
See update_window and update_frame_1 --- in both, force_p is set
if redisplay_dont_pause is set. So setting redisplay_dont_pause will
force a complete redisplay.
Both functions may still call detect_input_pending_ignore_squeezables
if force_p is set (although input_pending is ignored).
The following patch fixes that:
*** dispnew.c 04 Jun 2006 20:58:14 +0200 1.366
--- dispnew.c 08 Jun 2006 23:58:51 +0200
***************
*** 4119,4125 ****
/* Check pending input the first time so that we can quickly return. */
if (redisplay_dont_pause)
force_p = 1;
! else
detect_input_pending_ignore_squeezables ();
/* If forced to complete the update, or if no input is pending, do
--- 4119,4125 ----
/* Check pending input the first time so that we can quickly return. */
if (redisplay_dont_pause)
force_p = 1;
! else if (!force_p)
detect_input_pending_ignore_squeezables ();
/* If forced to complete the update, or if no input is pending, do
***************
*** 5200,5206 ****
}
}
! if ((i - 1) % preempt_count == 0)
detect_input_pending_ignore_squeezables ();
update_frame_line (f, i);
--- 5200,5206 ----
}
}
! if (!force_p && (i - 1) % preempt_count == 0)
detect_input_pending_ignore_squeezables ();
update_frame_line (f, i);
--
Kim F. Storm <[EMAIL PROTECTED]> http://www.cua.dk
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug