GTK 滚动条带透明或无槽

GTK 滚动条带透明或无槽

是否有可能在 GTK-2 或/和 GTK-3 中删除滚动条槽或者让它不可见?

我知道有一些脚本可以删除滚动条步进器,例如:

GtkScrollbar::has-forward-stepper = 0

现在我想知道是否有这样的脚本可以去除槽。

换句话说,GTK 滚动条位于内容的末尾,但我想把它放在超过内容——就像覆盖滚动条一样。

编辑:让我们更清楚地说明我的问题。我编辑了 GTK-2 和 GTK-3 主题,使滚动条更类似于 Overlay,因为我不喜欢低对比度的宽滚动条。因此,我编辑了gtkrc文件gtk-widgets.css,将滑块颜色更改为橙​​色,将槽更改为白色,但如下面的屏幕截图所示,槽和深色背景之间的对比度令人烦恼。

gtk-2 深色背景上的白色槽

问题就在这里如果有可能完全消除低谷或制造低谷透明的。我猜后者是可能的。

我的理想是这样的:

带有无槽的 Overlay 滚动条的终端

答案1

透明颜色(RGBA)可以GTK-3使用alpha,使槽变得透明:

.scrollbar.trough,
.scrollbar.trough.vertical {
    border: alpha (@base_color, 0.0);
    background: alpha (@base_color, 0.0);
}

我还不知道 GTK-2。

答案2

我不确定我是否正确理解了你的问题但是......

我使用 Lubuntu 13.04 和 Greybird 主题 ( sudo apt-get install shimmer-themes)。我大量修改了 gtk2 和 gtk3 以适应我的口味。图片显示了 gedit 窗口的一部分(顶部)和文件管理器 Thunar 的一部分(下方)。如您所见,凹槽并不明显。

                                                     滚动条槽

为了获得这种效果,如果这就是您想要的,我编辑了~/.themes/MyGreybird/gtk-2.0/gtkrc~/.themes/MyGreybird/gtk-3.0/gtk.css~/.themes/MyGreybird/gtk-3.0/gtk-widgets.css

不幸的是,我真的说不清是这个还是那个 hack 给了我当前的外观。如果您正在寻找类似我所拥有的东西,请尝试编辑与我提到的文件类似的文件,方法是查找以下内容:

  • GtkScrollbar ::trough-border
  • prelight_shade...# 滚动条滑块的阴影级别、组合框样式 (1) 和带有渐变颜色的预光状态
  • trough_shades # 在 GtkScrollbar 和 GtkProgressbar 的槽上绘制渐变

这些都在里面,并且我已经在我的主题中通过在行首处gtkrc将它们注释掉了。#

然后,在 中gtk-widgets.css,我的主题有:

.scrollbars-junction,
.scrollbar.trough,
.scrollbar.trough.vertical {
    border-width: 0;
    border-radius: 0;
/*    background-image: -gtk-gradient(linear, left top, right top,
                                     from (shade(@theme_bg_color, 1.1)),
                                     to (shade(@theme_bg_color, 1.3)));*/
    background-color: shade(@theme_bg_color, 0.9);
}

.scrollbar.trough.horizontal {
/*    background-image: -gtk-gradient(linear, left top, left bottom,
                                     from (shade(@theme_bg_color, 1.1)),
                                     to (shade(@theme_bg_color, 1.3)));*/
    background-color: shade(@theme_bg_color, 0.9);
}

再次,我注释掉了一些内容(使用/**/)。

我不确定我是否说得通,但基本上,只需寻找相关内容并将其注释掉或修改即可!

我使用 gedit 作为编辑器使用插件它可以保存多个带有时间戳的备份,这样如果我破坏了某些东西,我可以恢复更改。

请注意,某些应用程序可能有自己的滚动条系统,您必须单独处理它们。

相关内容