すべてのウィンドウのドロップ/ボックス シャドウを制御するにはどうすればよいですか? Gnome テーマにはさまざまなサイズのシャドウがあるようなので、可能だと思います。
私が試したことは次のとおりです:
「~/.config/gtk-3.0/gtk.css」の gtk.css を編集して以下を追加します。
.window-frame {box-shadow: none;} .window-frame:backdrop {box-shadow: none;}
「~/.themes/」にインストールされたダウンロードしたテーマのコピーに同じ CSS を追加しました。これには .window-frame クラスがなかったので追加しました。
同じ CSS と、「/usr/share/themes/」からコピーしたデフォルトのテーマの 1 つ (Albatross) を追加しました。これには、「gtk-widgets.css」に .window-frame クラスがあったので、それを変更しました。
それぞれの後に Gnome シェルを再起動しました。試行 1 と 2 では何も起こりませんでした。試行 3 では影は消えましたが、アプリケーションの更新にも影響しているようで、テキストのスクロールは更新されません。
--
仕様: Ubuntu 18.04 (Gnome/Mutter 搭載)
答え1
これを解決するには、使用しているテーマの「gtk.css」を編集します。テーマはドロップ/ボックス シャドウを制御します。Ubuntu 18.04 でテストしました。「~/.config/gtk-3.0/gtk.css」でデフォルトを編集できますが、もっと良い方法として、インストールした独自のテーマを編集できます (デフォルトのテーマのコピーであってもかまいません)。ホーム ディレクトリの「~/.themes/」フォルダーにテーマをインストールし、「gtk-3.0」フォルダーで「gtk.css」ファイルを見つけます。テキスト エディターでファイルを開き、「decoration」と「decoration:backdrop」を検索します。ウィンドウのシャドウを削除するには、box-shadow 行をコメント アウトし、次のように独自の設定を「none」に追加します。
decoration
{
border-radius: 6px 6px 0 0;
border-width: 0px;
/*box-shadow: 1px 12px 12px 12px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(0, 0, 0, 0.18);*/
box-shadow: none;
margin: 4px;
}
decoration:backdrop
{
border-radius: 6px 6px 0 0;
border-width: 0px;
/*box-shadow: 1px 12px 12px 12px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(0, 0, 0, 0.18);*/
box-shadow: none;
margin: 4px;
}
ファイルを保存します。[設定] > [外観] でテーマを読み込む必要があります。すでに使用している場合は、別のテーマに変更してから、もう一度テーマに戻します。これで、ウィンドウに影がなくなります。下の画像を参照してください。
答え2
いつでも GTK Inspector ( gsettings set org.gtk.Settings.Debug enable-inspector-keybinding true
) を有効にして内部を調べることができます。
これが私の~/.config/gtk-3.0/gtk.css
window decoration, window paned, window paned headerbar {
/* square top corners */
border-radius: 0;
}
window paned headerbar
{
/* header top shadow */
box-shadow: none;
}
window decoration
{
/* Remove shadows */
box-shadow: none;
/* window border */
border: 1px solid silver;
}