私はGnome 3用のテーマを作成しようとしていますが、タイトルバーのスタイリングに問題があります。私はバーのスタイルを設定するために次のCSSを使用していますが、タイトルバーをオーバーライドするのにを使用するウィンドウにのみ適用されます。gnome-3のタイトルバーのテーマ/スタイルを設定するには?
headerbar {
border: 1px solid #000000;
border-bottom: none;
border-radius: 4px 4px 0 0;
box-shadow: inset 1px 1px 0px 0px rgba(255, 255, 255, 0.25), inset -1px 1px 0px 0px rgba(255, 255, 255, 0.25);
background-image: linear-gradient(to right, rgba(109, 179, 242, 0.5) 0%, rgba(84, 163, 238, 0.5) 50%, rgba(54, 144, 240, 0.5) 51%, rgba(30, 105, 222, 0.5) 100%);
padding: 0 5px;
}
headerbar:backdrop {
border: 1px solid #303030;
border-bottom: none;
background-image: linear-gradient(to right, #C1C1C1 0%, #B1B1B1 50%, #A2A2A2 51%, #8B8B8B 100%);
}
/* Window Body */
window {
border: 1px solid #000000;
border-top: none;
border-radius: 0 0 4px 4px;
box-shadow: inset 1px -1px 0px 0px rgba(255, 255, 255, 0.25), inset -1px -1px 0px 0px rgba(255, 255, 255, 0.25);
background-image: linear-gradient(to right, rgba(109, 179, 242, 0.5) 0%, rgba(84, 163, 238, 0.5) 50%, rgba(54, 144, 240, 0.5) 51%, rgba(30, 105, 222, 0.5) 100%);
padding: 5px;
}
window:backdrop {
border: 1px solid #303030;
border-top: none;
background-image: linear-gradient(to right, #C1C1C1 0%, #B1B1B1 50%, #A2A2A2 51%, #8B8B8B 100%);
}
window > box {
border: 1px solid black;
border-radius: 3px;
box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.25);
margin: 4px;
background-color: #ABABAB;
background-image: none;
}
ウィンドウマネージャは、私が提供しているCSSではなく、最後に読み込まれたテーマのスタイリング情報を使用しているようです。私はgsettings set org.gnome.desktop.interface gtk-theme "<theme name"
を実行してテーマを切り替えています。
この後、私のテーマに切り替えるときgtk3-demo
ウィンドウは次のようになります
タイトルバーが(別のウィンドウに適用される)ように見えることになっているものです後にテーマに切り替えるとgtk3-demo
のウィンドウが表示されます。Adwaita
私の結論は、headerbar
とは別のCSSノードまたはクラスの別のセットがありますが、私が.header-bar
を使ってオンラインで見つけた提案はどれも成功につながっていません。 GTK_DEBUG=interactive gtk3-demo
で対話型デバッガを起動してCSSノードの階層を調べようとしましたが、ノード階層ビューアはタイトルバーを含まないwindow
ノードで終了します。
gnome-3
でテーマのタイトルバーをスタイルする適切な方法は何ですか?参照のために使用できるcssノードのマスターリストがありますか?
編集:私はちょうど出くわしたとdecoration
タグを試してみましたが、それはGtkHeaderBar
要素のないウィンドウには影響しませんheaderbar
と同じ問題を、持っているようです。
編集2:私の問題は必ずしも私が作成したCSSであるとは限りません。タイトルバーの変更を誘発しようとする最後の努力として、私はルール* { color: #00ff00; background-color: #ff0000; background-image: none}
を作成しましたが、タイトルには影響しませんでした。私は今、デフォルトのタイトルバーが、アプリケーションcss以外の場所、おそらく~/.themes/xyz/
ディレクトリの下の別のフォルダにあると思っています。現在、CSS全体をgtk-3.0
とgtk-3.20
の両方のフォルダにコピーしていますが、何も変更されていないようです。これは私のテーマの木です。必要なファイルがありませんか?
.
├── gtk-3.0
│ └── gtk.css
├── gtk-3.20
│ └── gtk.css
└── index.theme