From a0acdcd08c6b2ea133cc355a7cc07e3c9c4a4ccc Mon Sep 17 00:00:00 2001 From: Adrien Plazas Date: Mon, 10 Sep 2018 12:45:26 +0200 Subject: [PATCH] Adwaita: Fix dropping the backgroud on nested headerbars Make the selector less greedy to not remove the background on non-titlebar headerbars contained in non-headerbar titlebars and only to the ones contained in headerbar titlebars. This avoid issues in some applications. Also make dropping the background more agressive to actually remove it. --- gtk/theme/Adwaita/_common.scss | 21 ++++++++++----------- gtk/theme/Adwaita/gtk-contained-dark.css | 4 ++-- gtk/theme/Adwaita/gtk-contained.css | 4 ++-- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/gtk/theme/Adwaita/_common.scss b/gtk/theme/Adwaita/_common.scss index e016969f39..28682b3082 100644 --- a/gtk/theme/Adwaita/_common.scss +++ b/gtk/theme/Adwaita/_common.scss @@ -1658,17 +1658,6 @@ headerbar { } } } - - &.titlebar headerbar:not(.titlebar) { - // Drop the background of non-titlebar nested headerbars. This is needed to - // work around headerbar sliding animation issues without refactoring - // Adwaita's support of titlebars and headerbars as it may break - // applications. - // See https://gitlab.gnome.org/GNOME/gtk/issues/1264 for more information. - background-color: rgba (0, 0, 0, 0); - background-image: none; - box-shadow: none; - } } headerbar { @@ -1684,6 +1673,16 @@ headerbar { margin-top: 9px; margin-bottom: 9px; } + + &.titlebar headerbar:not(.titlebar) { + // Drop the background of non-titlebar nested headerbars. This is needed to + // work around headerbar sliding animation issues without refactoring + // Adwaita's support of titlebars and headerbars as it may break + // applications. + // See https://gitlab.gnome.org/GNOME/gtk/issues/1264 for more information. + background: none; + box-shadow: none; + } } .background .titlebar { diff --git a/gtk/theme/Adwaita/gtk-contained-dark.css b/gtk/theme/Adwaita/gtk-contained-dark.css index 453db3462a..e6facfc608 100644 --- a/gtk/theme/Adwaita/gtk-contained-dark.css +++ b/gtk/theme/Adwaita/gtk-contained-dark.css @@ -660,12 +660,12 @@ searchbar > revealer > box { margin: -6px; padding: 6px; } .solid-csd .titlebar:backdrop:dir(rtl):not(headerbar), .solid-csd .titlebar:backdrop:dir(ltr):not(headerbar), .solid-csd .titlebar:dir(rtl):not(headerbar), .solid-csd .titlebar:dir(ltr):not(headerbar), .solid-csd headerbar:backdrop:dir(rtl), .solid-csd headerbar:backdrop:dir(ltr), .solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { margin-left: -1px; margin-right: -1px; margin-top: -1px; border-radius: 0; box-shadow: none; } -.titlebar:not(headerbar) headerbar:not(.titlebar), headerbar.titlebar headerbar:not(.titlebar) { background-color: rgba 0, 0, 0, 0; background-image: none; box-shadow: none; } - headerbar entry, headerbar spinbutton, headerbar separator, headerbar button { margin-top: 6px; margin-bottom: 6px; } headerbar switch { margin-top: 9px; margin-bottom: 9px; } +headerbar.titlebar headerbar:not(.titlebar) { background: none; box-shadow: none; } + .background .titlebar:backdrop, .background .titlebar { border-top-left-radius: 7px; border-top-right-radius: 7px; } .background.tiled .titlebar:backdrop, .background.tiled .titlebar, .background.tiled-top .titlebar:backdrop, .background.tiled-top .titlebar, .background.tiled-right .titlebar:backdrop, .background.tiled-right .titlebar, .background.tiled-bottom .titlebar:backdrop, .background.tiled-bottom .titlebar, .background.tiled-left .titlebar:backdrop, .background.tiled-left .titlebar, .background.maximized .titlebar:backdrop, .background.maximized .titlebar, .background.solid-csd .titlebar:backdrop, .background.solid-csd .titlebar { border-top-left-radius: 0; border-top-right-radius: 0; } diff --git a/gtk/theme/Adwaita/gtk-contained.css b/gtk/theme/Adwaita/gtk-contained.css index c7fed4a2af..cd6bb95779 100644 --- a/gtk/theme/Adwaita/gtk-contained.css +++ b/gtk/theme/Adwaita/gtk-contained.css @@ -668,12 +668,12 @@ searchbar > revealer > box { margin: -6px; padding: 6px; } .solid-csd .titlebar:backdrop:dir(rtl):not(headerbar), .solid-csd .titlebar:backdrop:dir(ltr):not(headerbar), .solid-csd .titlebar:dir(rtl):not(headerbar), .solid-csd .titlebar:dir(ltr):not(headerbar), .solid-csd headerbar:backdrop:dir(rtl), .solid-csd headerbar:backdrop:dir(ltr), .solid-csd headerbar:dir(rtl), .solid-csd headerbar:dir(ltr) { margin-left: -1px; margin-right: -1px; margin-top: -1px; border-radius: 0; box-shadow: none; } -.titlebar:not(headerbar) headerbar:not(.titlebar), headerbar.titlebar headerbar:not(.titlebar) { background-color: rgba 0, 0, 0, 0; background-image: none; box-shadow: none; } - headerbar entry, headerbar spinbutton, headerbar separator, headerbar button { margin-top: 6px; margin-bottom: 6px; } headerbar switch { margin-top: 9px; margin-bottom: 9px; } +headerbar.titlebar headerbar:not(.titlebar) { background: none; box-shadow: none; } + .background .titlebar:backdrop, .background .titlebar { border-top-left-radius: 7px; border-top-right-radius: 7px; } .background.tiled .titlebar:backdrop, .background.tiled .titlebar, .background.tiled-top .titlebar:backdrop, .background.tiled-top .titlebar, .background.tiled-right .titlebar:backdrop, .background.tiled-right .titlebar, .background.tiled-bottom .titlebar:backdrop, .background.tiled-bottom .titlebar, .background.tiled-left .titlebar:backdrop, .background.tiled-left .titlebar, .background.maximized .titlebar:backdrop, .background.maximized .titlebar, .background.solid-csd .titlebar:backdrop, .background.solid-csd .titlebar { border-top-left-radius: 0; border-top-right-radius: 0; }