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

From: Eli Zaretskii <[email-masked]>
Date: Mon, 21 Jan 2019 21:47:21 +0200

> From: Andreas Politz <[email-masked]>
> Cc: Stephen Berman <[email-masked]>,  [email-masked],  [email-masked],  [email-masked]
> Date: Mon, 21 Jan 2019 20:14:07 +0100
> 
> image-mode uses window-configuration-change-hook to check whether a new
> window for the buffer it was activated for was created.  In this case it
> runs the hook image-mode-new-window-functions.  This is the hook
> pdf-tools attaches itself to in order to create an overlay with a window
> property and the image of the current page.
> 
> Usually, i.e. in Emacs 26.1, this is sufficient for the image to be
> visible immediately (or at least immediately after the function has
> returned and Emacs is idle).  Conversely, in the current master branch,
> the image is not visible until, as it seems, the next redraw cycle.
> 
> Note, that I don't see a delay. Rather nothing seems to happen until I
> trigger a redisplay, for example via M-x.

So it's indeed a redisplay problem.  Can you build both Emacs 26 and
Emacs 27 with --enable-checking, then disable blink-cursor-mode and
global-eldoc-mode, then invoke "M-x trace-redisplay", and show the
trace displayed on stderr in both versions when you visit a PDF file?
Please invoke trace-redisplay _before_ you visit the PDF file.  I'm
especially interested in what happens in Emacs 27 after you visit the
PDF file, but _before_ you type "M-x" that causes the image to be
displayed.  IOW, what trace do you see after visiting the PDF file
during that time that "nothing seems to happen", as compared to what
happens in Emacs 26.

Thanks.