如何修复GTK3滚动条行为

我已经移除了覆盖滚动条。
我该如何配置GTK3滚动条的点击行为?
在Ubuntu 12.10和13.04下,GTK3应用程序的滚动条表现得很奇怪。这个问题也出现在Fedora 17和18上。
当我在拇指上方或下方的任何位置左键单击时,它会跳到那个位置并从那里开始拖动。预期的行为是向上或向下滚动一页。
当我在拇指上方或下方的任何位置右键单击时,它会向上或向下滚动一页。这是我对左键单击的期望行为,就像在GTK2和QT应用程序中一样。
水平滚动条也有同样的问题。
这对于一致性来说非常糟糕。

2你可以尝试将滚动条行为设置回GTK2,使用以下环境变量:LIBOVERLAY_SCROLLBAR=0 - Glutanimate
谢谢,自从Firefox切换到gtk3之后,这个问题一直困扰着我。 - sarnold
4个回答


5非常感谢,这对我非常有帮助。我只使用2到3个基于GTK的应用程序,而这些应用程序中滚动条的行为与其他所有应用程序都不同,这让我感到非常困扰。 - Jan Hlavacek
1对我来说,在KDE中无法为GTK应用程序工作。在/etc/gtk-3.0/settings.ini中设置属性对一些应用程序有效,但并非所有应用程序都适用。 - musiKk
4没问题,这将修复像gedit这样的GTK3应用程序。很遗憾,这些配置修改是必要的,以防止一个最基本的图形用户界面功能(几十年来一直完美运行)出现问题。 - basic6
11这个“功能”是哪个天才想出来的?中键点击已经可以跳转到所点击的位置了,而且被这个东西搞坏了。 fix_broken_scroll_bar=true - Gringo Suave
我想实施这个解决方案,但是我不知道如何以及在哪里编辑(或创建)文件~/.config/gtk-3.0/settings.ini。你能告诉我该怎么做吗? - Larry Golade
~ 表示 "你的主目录",例如 /home/thierry - cweiske
这个 gtk3 的设置有效,但似乎会导致无法在“视频”(Totem)应用程序中点击时间轴以跳转到视频的任何点。这可能被认为是“视频”中的一个错误,但如果这个非默认的 gtk3 设置有可能在任意 gtk3 应用程序中引发错误,那么就应该谨慎使用。 - yoyoma2
我不使用Totem,但也许按住Shift键再点击可以解决问题? - Olaf Dietsche
似乎在Ubuntu 20.04上无法工作。为了安全起见,我将该文件添加到了gtk-2.0、gtk-3.0和gtk-4.0中,并尝试了true和false两种方式。有什么线索能够找出问题出在哪里吗? - Rudolf Real

对于GTK2应用程序,我还注意到在Adwaita主题下发生了滚动条弯曲的行为(但在Greybird主题下没有)。我通过编辑/usr/share/themes/Adwaita/gtk-2.0/gtkrc并更改该行来修复了GTK2的问题。
gtk-primary-button-warps-slider = 1

gtk-primary-button-warps-slider = 0

有没有基于用户的设置文件来设置这个选项? - user1850133

行为似乎与您选择的桌面主题/样式有关。如果您安装了gtk2-engines-xfce软件包,然后从外观设置中选择一个GTK2主题(例如Xfce-4.0),您将获得GTK2风格的滚动条。
除非您特别想使用Adwaita或Greybird,否则我认为最好(也是最简单)的解决方案就是选择一个不同的主题。

可以通过在`~/.themes/myThemeName/gtk-3.0/settings.ini`文件中创建/包含[Settings]部分来实现按主题恢复到Gtk2滚动条行为的目的。
[Settings]
gtk-primary-button-warps-slider = false

我的发行版似乎已经完成了这个,但是滑块在adwaita主题下仍然表现出奇怪的方式。 - user1850133