1 minute read

I really dislike “modern” scrollbars and I think they only make any sense when using touch devices or at least a touch pad.

I miss the visual cue on where I am in the document and it is also VERY ANNOYING to actually scroll using those bars.

So, when I migrated to Pop!_OS Linux, bringing back some glory into the scroll bars was one of the first things I did.

Stop Hiding

First add to /etc/environment (needs sudo)

GTK_OVERLAY_SCROLLING=0

This will make the scroll bars always visible (thank God)

Stop being thin

Then we make them thicker, by editing the local user config

nano "$HOME/.config/gtk-3.0/gtk.css"

The file probably does not exist yet, you can adjust the code below to your liking

/* Scrollbar width fixes */
scrollbar.vertical slider,
scrollbar.slider.vertical
{
    min-width: 0.9em;
}
scrollbar.horizontal slider,
scrollbar.slider.horizontal
{
    min-height: 0.9em;
}
 
/* Steppers */
* {
    -GtkScrollbar-has-backward-stepper: 1;
    -GtkScrollbar-has-forward-stepper: 1;
}
 
scrollbar button {
    min-width: 0.9em;
    min-height: 0.9em;
}
 
scrollbar.vertical button.down {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
}
 
scrollbar.vertical button.up {
    -gtk-icon-source: -gtk-icontheme("pan-up-symbolic");
}
 
scrollbar.horizontal button.down {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
}
 
scrollbar.horizontal button.up {
    -gtk-icon-source: -gtk-icontheme("pan-start-symbolic");
}
 
undershoot.top, undershoot.right, undershoot.bottom, undershoot.left { 
    background-image: none;
}

Change Firefox scroll bar

Open Firefox and go to about:config (accept the risk).

Change widget.non-native-theme.scrollbar.size.override to the size you want (I used 20).

To enable the scroolbar arrows as well, change
widget.non-native-theme.gtk.scrollbar.allow-buttons to true

Comments