Gtkのスクロールバーの幅とかボタン内の余白とか

最近のデスクトップは Ubuntu Mate を TraditionalOk テーマで使ってます。

だいたいいい感じなんですが、スクロールバーがちょっと太いのとボタン内のテキストの周囲に余計な余白があってボタンが大きくなってしまうのがイマイチだと思ってました。

この辺はテーマによるみたいなので /usr/share/themes 配下で定義されてるようです。

みようみまねでテキトーに $HOME/.config/gtk-3.0/gtk.css に次のように書いておくと調整できました。

/* ボタン内の余白を 0 に */
button {
    padding: 0px;
}

/* スクロールバーの幅を 10px に */
scrollbar.vertical {
    min-width: 10px;
}

scrollbar.horiozntal {
    min-height: 10px;
}

scrollbar.horizontal trough {
    min-height: 10px;
}

scrollbar.vertical trough {
    min-width: 10px;
}

scrollbar.vertical button,
scrollbar.vertical .button {
    min-width: 10px;
}

scrollbar.horizontal button,
scrollbar.horizontal .button {
    min-height: 10px;
}

scrollbar.vertical slider,
scrollbar.vertical .slider {
    min-width: 10px;
}

scrollbar.horizontal slider,
scrollbar.horizontal .slider {
    min-height: 10px;
}

/* ここから下はスクロールバーの矢印ボタンを常に表示する設定 */
scrollbar {
    -GtkScrollbar-has-backward-stepper: true;
    -GtkScrollbar-has-forward-stepper: true;
}

scrollbar.horizontal {
    -GtkScrollbar-has-backward-stepper: false;
    -GtkScrollbar-has-forward-stepper: false;

}

scrolledwindow > scrollbar.horizontal {
    -GtkScrollbar-has-backward-stepper: true;
    -GtkScrollbar-has-forward-stepper: true;
}

/* 追記: テキスト入力を細めに */
entry {
    padding: 1px;
}

しかしこれでもFirefox のスクロールバーに矢印が出ないのは謎。