Subject: bug#32002: 24.4; Scroll bar start, end not correct

From: martin rudalics <[email-masked]>
Date: Tue, 10 Jul 2018 09:30:22 +0200

>> Does the slider of a one-line window's scroll bar also expand into the
 >> other window's scroll bar when you remove the steppers?
 >
 > I'm not sure how to remove the steppers other than changing the theme.

Changing the theme is OK.  Likely, there's no other method even via
the API.

 > If I change the theme to Adwaita (no steppers) and follow your test
 > instructions, the results depend on which version of Emacs I use.  With
 > my emacs-26 build, I get the whitespace that I mentioned previously.  If
 > I use (- 3 ...) instead of (- 2 ...), giving me a 2-line window, I get a
 > proper scrollbar that stops at the top window's modeline (see attached).
 >
 > With the Emacs 25 that is bundled with Debian 9, following your
 > instructions gives me a scrollbar that extends over the modeline for the
 > top window, but no further (see attached).

This is strange because the checks are essentially the same in Emacs 25

       if (msl > height)
         {
           /* No room.  Hide scroll bar as some themes output a warning if
              the height is less than the min size.  */
           gtk_widget_hide (wparent);
           gtk_widget_hide (wscroll);

and in Emacs 26

       bool hidden = height < msl;
       if (hidden)
         {
           /* No room.  Hide scroll bar as some themes output a warning if
              the height is less than the min size.  */
           gtk_widget_hide (wparent);
           gtk_widget_hide (wscroll);

What did change is that we now take scaling into account.  You still
didn't answer my question about whether you use scaling.  Do you?

Then it would be interesting to break at the two if tests cited above
to find out why the scroll bar is hidden for (-2 ...) in the 26 case
and not in the 25 one.  Can you post the respective values of 'height'
and 'msl'?

Thanks, martin