Subject: Re: bug#34569: 26.1.90; Zero wide scroll bars

From: Eli Zaretskii <[email-masked]>
Date: Sat, 23 Feb 2019 11:51:17 +0200

> Date: Tue, 19 Feb 2019 10:08:15 +0100
> From: martin rudalics <[email-masked]>
> 
> Setting 'scroll-bar-width' to zero can have unforeseen consequences
> depending on the toolkit used.

Why would users set 'scroll-bar-width' to zero, instead of turning off
scroll-bar-mode?  Or are you saying that turning off scroll-bar-mode
also produces the same bugs?

If turning off scroll-bar-mode does work, then how about disabling the
direct setting of 'scroll-bar-width', either silently or noisily?

> /* Width that a scroll bar in frame F should have, if there is one.
>     Measured in pixels.
>     If scroll bars are turned off, this is still nonzero.  */
> #define FRAME_CONFIG_SCROLL_BAR_WIDTH(f) ((f)->config_scroll_bar_width)
> 
> This comment is, unfortunately, wrong

But the comment says "disabled", not "width set to zero".  is it
correct when scroll-bar-mode is turned off?  If so, perhaps just
qualifying the comment by the method by which the scroll bars are
disabled will be good enough?

> Note also that with emacs 27.1 the bug can be produced more directly by
> including
> 
> (setq default-frame-alist '((vertical-scroll-bars . nil) (scroll-bar-width . 0)))
> 
> in the early-init.el and then enabling vertical scroll bars.  The
> indirection via 'frame-notice-user-settings' is not needed there.

If we disallow setting this parameter directly, or at least setting it
to zero, this problem will also go away, right?

Thanks.