Subject: bug#18912: 24.4; mode-line corruption on graphical frames in dual-headed display

From: martin rudalics <[email-masked]>
Date: Tue, 04 Nov 2014 10:19:26 +0100

> Trying to get the offending value back I figured out that the window
 > manager resizes the frame by one pixel when I move the frame from the
 > left side to the right one.

I don't understand what "moving the frame" means.  Does "left side" mean
VGA1 and "right side" LVDS1?  What evidence do you have that the window
manager "resizes" the frame when you move it?

 > So, my original report was based on a
 > spurious intervention of the window manager.  Not moving the frame and
 > evaluating '(window-pixel-height)' results in the expected value of 613
 > for the *good* frame.

And you get the corrupted mode line when you do "not move" the frame as
well?  Elsewhere you asked to "please, provide a way to make Emacs
optionally redraw the mode-line after any scroll operation".  How does
scrolling enter here?  Do you have to scroll the window in order to show
the corruption?  Maybe you could give us a step-by-step scenario of what
you do to the show the corruption, how to remove it afterwards, and how
to show it again after it was temporarily removed.

I don't have the slightest idea why the mode line would _not_ be redrawn
after scrolling but maybe there's some optimization here.  In any case
with emacs -Q moving the window's point from one line to another should
redraw the mode line to show the new line number.

BTW, suppose you evaluate

(set-frame-parameter nil 'bottom-divider-width 8)

Does that impact the appearance of the bug in any way?

martin