Subject: Re: bug#38181: Actual height of mode-line not taken into account

From: martin rudalics <[email-masked]>
Date: Sat, 16 Nov 2019 09:57:40 +0100

>>   > I think fit-window-to-buffer relies on window's metrics (like the
 >>   > number of lines in the text area) to be up to date, and that is only
 >>   > true after a window was redisplayed once since changing the mode-line
 >>   > height.  Martin, is this correct?
 >>
 >> Yes.
 >
 > Then I'm not sure we can fix such use cases at all, without causing
 > display flickering in much more popular use cases.  Do you have any
 > ideas for a possible fix?  Could fit-window-to-buffer invoke
 > 'redisplay' internally, perhaps?

It could but it's called way too often to warrant such behavior by
default.  But we could give it a separate optional argument so users
can avoid the advice.  I think Jonas could easily write and a test a
patch along this idea.

 >> But, as I mentioned earlier, the problem shows up with the
 >> scroll bar immediately when Jonas' form is evaluated, see the attached
 >> screenshot.
 >
 > That just means we (or a Lisp program which makes these mode-line
 > modifications) need to recreate and redisplay the scroll bars anew in
 > these cases, right?

Right.  But that same program could also redisplay all windows in
these cases, right?

 > It's a separate problem, right?

For some value of right ...

martin