Как мне контролировать все тени окон/коробок? Темы Gnome, похоже, имеют разные размеры теней, поэтому я предполагаю, что это возможно.
Вот что я попробовал:
Отредактируйте gtk.css в "~/.config/gtk-3.0/gtk.css", добавив:
.window-frame {box-shadow: none;} .window-frame:backdrop {box-shadow: none;}
Я добавил тот же css в копию загруженной темы, установленной в "~/.themes/" - в ней не было класса .window-frame, поэтому я его добавил.
Я добавил тот же css, а также одну из тем по умолчанию (Albatross), скопированную из "/usr/share/themes/" - у нее был класс .window-frame в "gtk-widgets.css", поэтому я изменил его.
Я перезапускал Gnome shell после каждого. Попытки 1 и 2 ничего не дали. Попытка 3 избавила от теней, но также, похоже, повлияла на обновление в приложениях — прокрутка текста не обновляется.
--
Характеристики: Ubuntu 18.04 с Gnome/Mutter
решение1
Решение этой проблемы — отредактировать «gtk.css» в любой теме, которую вы используете — темы управляют тенью drop/box. Я тестировал это на Ubuntu 18.04. Вы можете отредактировать тему по умолчанию в «~/.config/gtk-3.0/gtk.css» или, что гораздо лучше, вы можете отредактировать свою собственную установленную тему, даже если это копия темы по умолчанию. Установите свою тему в папку домашнего каталога «~/.themes/», а затем найдите файл «gtk.css» в его папке «gtk-3.0». Откройте файл в текстовом редакторе и найдите «decoration» и «decoration:backdrop». Чтобы удалить тень Windows, закомментируйте строку 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;
}