Subject: bug#34138: 27.0.50; Delayed display of PDF file images

From: martin rudalics <[email-masked]>
Date: Sat, 26 Jan 2019 10:19:57 +0100

> I'd like to see if there's a less radical solution.

One reasonable location to run window change functions should be right
before

   if (windows_or_buffers_changed && !update_mode_lines)
     /* Code that sets windows_or_buffers_changed doesn't distinguish whether
        only the windows's contents needs to be refreshed, or whether the
        mode-lines also need a refresh.  */
     update_mode_lines = (windows_or_buffers_changed == REDISPLAY_SOME
   			 ? REDISPLAY_SOME : 32);

in redisplay_internal.

It's slightly suboptimal because "global" values like the old selected
frame and the old selected window would still have to be updated where
we do that now and frame "local" values might be inconsistent in the
sense that when I run the hook for a frame F1 then inspecting the "old
size" of a window on a frame F2 would depend on whether we have run
the hook for F2 already in this redisplay cycle or not.  But these are
not really big issues.  WDYT?

martin