Windows 10 will reach EOS (end of support) on October 14, 2025. For more information, see this article.

Cari Bantuan

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Pelajari Lebih Lanjut

How do I get scroll bar arrow buttons at the ends of the scroll bar

  • 1 balas
  • 0 memiliki masalah ini
  • 46 kunjungan
  • Balasan terakhir oleh Robert Jenkins

more options

I am using the Flatpak version of Firefox on Linux Mint Cinnamon (Ubuntu/Debian) [Mozilla flatpak - 1.0 (138.0.4 (64-bit))].

When I search with Google, a lot of the search results tell me to make changes to /~/.config/gtk-3.0/gtk.css, but I already did that a long time ago, before I installed the Firefox flatpak.

All of my regular apps and Flatpak apps (except Firefox) that I run have correct scroll bars with buttons on the ends.

(With some of my apps, like KDE Dolphin file manager, the buttons are invisible, i.e., the graphical arrows do not render, but if I click in the blank spots at the ends of the scroll bars, the buttons are there and function correctly, even if they are not graphically represented. In Firefox, there are no buttons, visible or invisible.)

It seems to me that Firefox is not using system scroll bars (whereas my other apps do and show correct scroll bars), so I'm not sure that messing around in /~/.config/gtk-3.0/gtk.css is going to help me. Considering that Firefox seems to be using its own (non-system) scroll bars, I thought I would have to do it through about:config rather than my system settings in gtk.css.

Can you please tell me what to change in about:config?

You would think it would be "widget.non-native-theme.gtk.scrollbar.allow-buttons" = true, but it doesn't seem to do anything.

This forum software is not very good. There does not appear to be any ability to preview my post, or enter blocks of code like in other forums.

Here are my modified about:config prefs:

user_pref("browser.aboutConfig.showWarning", false);
user_pref("browser.backspace_action", 0);
user_pref("browser.urlbar.update2.engineAliasRefresh", true);
user_pref("layout.css.scrollbar-width-thin.disabled", true);
user_pref("sidebar.visibility", "hide-sidebar");
user_pref("ui.clickToScroll", 0);
user_pref("ui.scrollToClick", 0);
user_pref("widget.gtk.overlay-scrollbars.enabled", false);
user_pref("widget.non-native-theme.gtk.scrollbar.allow-buttons", true);
user_pref("widget.non-native-theme.gtk.scrollbar.thumb-size", "20");
user_pref("widget.non-native-theme.scrollbar.size.override", 24);
user_pref("widget.non-native-theme.scrollbar.style", 4);

This is the contents of /~/.config/gtk-3.0/settings.ini:

[Settings]
gtk-primary-button-warps-slider=false

This is the contents of /~/.config/gtk-3.0/gtk.css:

scrollbar.vertical slider,
scrollbar.slider.vertical
{
    /* min-width: 20px; */
}
scrollbar.horizontal slider,
scrollbar.slider.horizontal
{
    /* min-height: 20px; */
}
scrollbar,
.scrollbar
{
    -GtkScrollbar-has-backward-stepper: TRUE;
    -GtkScrollbar-has-forward-stepper: TRUE;
}

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");
}

scrollbar slider {
	min-width: 20px;
	min-height: 20px;}

I am using the Flatpak version of Firefox on Linux Mint Cinnamon (Ubuntu/Debian) [Mozilla flatpak - 1.0 (138.0.4 (64-bit))]. When I search with Google, a lot of the search results tell me to make changes to /~/.config/gtk-3.0/gtk.css, but I already did that a long time ago, before I installed the Firefox flatpak. All of my regular apps and Flatpak apps (except Firefox) that I run have correct scroll bars with buttons on the ends. (With some of my apps, like KDE Dolphin file manager, the buttons are invisible, i.e., the graphical arrows do not render, but if I click in the blank spots at the ends of the scroll bars, the buttons are there and function correctly, even if they are not graphically represented. In Firefox, there are no buttons, visible or invisible.) It seems to me that Firefox is not using system scroll bars (whereas my other apps do and show correct scroll bars), so I'm not sure that messing around in /~/.config/gtk-3.0/gtk.css is going to help me. Considering that Firefox seems to be using its own (non-system) scroll bars, I thought I would have to do it through about:config rather than my system settings in gtk.css. Can you please tell me what to change in about:config? You would think it would be "widget.non-native-theme.gtk.scrollbar.allow-buttons" = true, but it doesn't seem to do anything. This forum software is not very good. There does not appear to be any ability to preview my post, or enter blocks of code like in other forums. <pre> Here are my modified about:config prefs: user_pref("browser.aboutConfig.showWarning", false); user_pref("browser.backspace_action", 0); user_pref("browser.urlbar.update2.engineAliasRefresh", true); user_pref("layout.css.scrollbar-width-thin.disabled", true); user_pref("sidebar.visibility", "hide-sidebar"); user_pref("ui.clickToScroll", 0); user_pref("ui.scrollToClick", 0); user_pref("widget.gtk.overlay-scrollbars.enabled", false); user_pref("widget.non-native-theme.gtk.scrollbar.allow-buttons", true); user_pref("widget.non-native-theme.gtk.scrollbar.thumb-size", "20"); user_pref("widget.non-native-theme.scrollbar.size.override", 24); user_pref("widget.non-native-theme.scrollbar.style", 4); This is the contents of /~/.config/gtk-3.0/settings.ini: [Settings] gtk-primary-button-warps-slider=false This is the contents of /~/.config/gtk-3.0/gtk.css: scrollbar.vertical slider, scrollbar.slider.vertical { /* min-width: 20px; */ } scrollbar.horizontal slider, scrollbar.slider.horizontal { /* min-height: 20px; */ } scrollbar, .scrollbar { -GtkScrollbar-has-backward-stepper: TRUE; -GtkScrollbar-has-forward-stepper: TRUE; } 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"); } scrollbar slider { min-width: 20px; min-height: 20px;} </pre>

Semua Balasan (1)

more options

I fixed this problem by editing the following file:

/var/lib/flatpak/runtime/org.gtk.Gtk3theme.Mint-Y-Aqua/x86_64/3.22/{a long hexadecimal string}/files/gtk.css

I did a Ctlr+F for "stepper" and found that the file contains the following code:

scrollbar {
  background-color: #fcfcfc;
  transition: 300ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
* {
  -GtkScrollbar-has-backward-stepper: false;
  -GtkScrollbar-has-forward-stepper: false;
}

I changed the two "false" values to "true".

Is there a better way of doing this, rather than editing installation files? Won't the changes be overwritten if the org.gtk.Gtk3theme.Mint-Y-Aqua Flatpak is updated? Why does it override my ~/.config/gtk-3.0/gtk.css, which has "true" for the steppers?

What is the purpose of about:config "user_pref("widget.non-native-theme.gtk.scrollbar.allow-buttons", true);" — does this do anything?

I wish y'all wouldn't make it so hard to have traditional scroll bars. I don't want smartphone/tablet-style scroll bars. This is a desktop PC, not a smartphone.

Membantu?

Ajukan pertanyaan

Anda harus masuk ke akun Anda untuk membalas kiriman ini. Sila mulai pertanyaan baru, jika Anda belum memiliki akun.