
最近、いくつかのプログラムをgtk3(deadbeef gtk3プラグイン、pcmanfm-gtk3、l3afpad)に更新しましたが、1つは本当に面倒です。
ステータスバーがgtk2バージョンより3倍高いのはなぜですか?
より多くの情報や大きなフォントがあるからではありません。テキストは両方のバージョンで同じで、gtk3のステータスバーに10px余白しかありません。だから私は「ねえ、gtk3には素晴らしいCSSがあります。gtk.cssやsettings.iniを使って調整できると思います」と思いました。しかし実際にはそうではありませんでした。以下のgtk.cssのすべて
GtkStatusbar { margin:0px; margin-top:0px; margin-bottom:0px; }
残念ながら何も起こりませんでした。
だから私はpcmanfmでGtkInspectorを使ってみました。 Statusbar要素全体を選択し(左と右のラベルの間のスペースを選択する必要があり、幅は10pxにすぎません)、プロパティを調べると、GtkWidgetに定義されているすべての余白値が10pxであることがわかります(余白を除く)。下)は6)です。値をダブルクリックして「すべての余白」を0に設定すると、すぐにgtk2ステータスバーが表示されます。満足です!
だから私はそれが可能であることを知っていますが、それをgtk.cssに入れる方法を見つけることができませんでした。私は必死に努力します:
GtkWidget { margin:0px; margin-top:0px; margin-bottom:0px; }
しかし、私はそれがうまくいくとは全く予想していませんでした。したがって、当然そうではありません。
また、オンラインで解決策を検索してみましたが、最終的に画面スペースを節約するために、Eclipseをgtk3からgtk2にダウングレードするいくつかの非常に具体的なヒントしか得られませんでした。これこれらの余白を削除するには、engrampaパッチを修正してください。
たわごと、おそらく約5秒でこれを行うことができるGNOME用のGUIツールがあります。しかし、私は間違ったものを探していました。
答え1
これは少し役に立ちます:
gtk_widget_set_margin_top(GTK_WIDGET(statusbar), 0);
gtk_widget_set_margin_bottom(GTK_WIDGET(statusbar), 0);