diff --git a/css/leptonChrome.css b/css/leptonChrome.css index 947d856..9120f7e 100644 --- a/css/leptonChrome.css +++ b/css/leptonChrome.css @@ -59,7 +59,7 @@ padding-inline-end: var(--arrowpanel-menuitem-padding-inline) !important; } /*= First visible tab margin at maximized #332 ===============================*/ - :root[tabsintitlebar="true"][sizemode="maximized"] #TabsToolbar { + :root:is([tabsintitlebar="true"], [customtitlebar="true"])[sizemode="maximized"] #TabsToolbar { margin-left: -1px; } /*= Disabled menu background color ===========================================*/ @@ -183,18 +183,18 @@ align-items: center !important; } /*= Inactive transparent #882 ================================================*/ - :root[tabsintitlebar] #titlebar:-moz-window-inactive, - :root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive, - :root[tabsintitlebar] #TabsToolbar:-moz-window-inactive { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive, + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive, + :root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive { opacity: 1 !important; color: color-mix(in srgb, currentColor calc(var(--inactive-titlebar-opacity, 0.75) * 100%), transparent) !important; --inactive-toolbarbutton-icon-fill-opacity: calc( var(--toolbarbutton-icon-fill-opacity, 1) * var(--inactive-titlebar-opacity, 0.75) ); } - :root[tabsintitlebar] #titlebar:-moz-window-inactive .toolbarbutton-icon, - :root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive .toolbarbutton-icon, - :root[tabsintitlebar] #TabsToolbar:-moz-window-inactive .toolbarbutton-icon { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive .toolbarbutton-icon, + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive .toolbarbutton-icon, + :root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive .toolbarbutton-icon { fill-opacity: var(--inactive-toolbarbutton-icon-fill-opacity, 1); } /*= Tabpreviw transparent #890 ===============================================*/ @@ -223,19 +223,19 @@ @supports -moz-bool-pref("userChrome.compatibility.os") { /*= Windows 10 - Top border of accent color at ESR #358 ======================*/ @media (-moz-platform: windows) { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top: 0.5px solid rgb(47, 47, 47) !important; } - :root[sizemode="normal"][tabsintitlebar]:-moz-window-inactive #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]):-moz-window-inactive #navigator-toolbox { border-top-color: rgb(57, 57, 57) !important; } } @media (-moz-platform: windows) and (-moz-windows-accent-color-in-titlebar) { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top-color: ActiveBorder !important; } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top-color: -moz-accent-color !important; } } @@ -300,13 +300,13 @@ /*= Titlebar Container Size at maximized #384 ================================*/ @media (-moz-platform: windows) { @supports not -moz-bool-pref("userChrome.compatibility.os.windows_maximized") { - :root[tabsintitlebar] #titlebar { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar { /* -moz-default-appearance: -moz-window-titlebar */ appearance: none !important; } } @supports -moz-bool-pref("userChrome.compatibility.os.windows_maximized") { - :root[tabsintitlebar][sizemode="maximized"] #titlebar { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #titlebar { appearance: none !important; padding-top: 8px; } @@ -331,14 +331,14 @@ /*= Common - URL Bar focus color =============================================*/ @media (-moz-windows-accent-color-in-titlebar), (-moz-gtk-csd-available) { /* URL Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --focus-outline-color: AccentColor !important; } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #urlbar[open] > #urlbar-background, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background { border-color: color-mix( @@ -348,14 +348,14 @@ ) !important; /* Like: --toolbar-field-focus-border-color */ } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --focus-outline-color: -moz-accent-color !important; } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #urlbar[open] > #urlbar-background, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background { border-color: color-mix( @@ -620,8 +620,11 @@ @media (-moz-platform: windows) { @supports -moz-bool-pref("userChrome.theme.system_default") { @media (-moz-platform: windows) and (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --toolbarseparator-color: color-mix(in srgb, currentColor 20%, transparent) !important; /* As default */ } } @@ -797,27 +800,35 @@ /*= Windows10 - Titlebar accent color ========================================*/ @media (-moz-windows-accent-color-in-titlebar) { /* Tab Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .titlebar-color, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .titlebar-color, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .titlebar-color { color: AccentColorText; background-color: AccentColor; } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .titlebar-color, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .titlebar-color, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .titlebar-color { color: -moz-accent-color-foreground; background-color: -moz-accent-color; } } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .toolbar-items, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .toolbar-items, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .toolbar-items { --toolbarbutton-icon-fill: currentColor; --toolbarbutton-hover-background: color-mix(in srgb, AccentColorText 10%, transparent); --toolbarbutton-active-background: color-mix(in srgb, AccentColorText 15%, transparent); } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .toolbar-items, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .toolbar-items, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .toolbar-items { --toolbarbutton-hover-background: color-mix(in srgb, -moz-accent-color-foreground 10%, transparent); --toolbarbutton-active-background: color-mix(in srgb, -moz-accent-color-foreground 15%, transparent); } @@ -4087,13 +4098,13 @@ --uc-space-left-tabbar: 8px; /* If the option is not specified, it is equivalent to 0px. */ } @supports not -moz-bool-pref("userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs:not([positionpinnedtabs]) { padding-inline-start: var(--uc-space-left-tabbar) !important; } } @supports -moz-bool-pref("userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs, + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs, :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs { padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width, 0px) + var(--uc-space-left-tabbar)) !important; } @@ -4254,21 +4265,21 @@ --uc-space-above-tabbar: 8px; /* If the option is not specified, it is equivalent to 0px. */ } @media (-moz-platform: windows) { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar) - var(--tabs-navbar-shadow-size)); } @supports -moz-bool-pref("userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar) - var(--tabs-navbar-shadow-size)); } } } @media (-moz-gtk-csd-available) { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar)); } @supports -moz-bool-pref("userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar)); } } @@ -4387,7 +4398,7 @@ /* Original: calc(var(--tab-border-radius) + 4px) = 8px */ border-radius: var(--scrollbtn-border-radius, calc(var(--tab-border-radius) + 4px)) !important; } - :root[tabsintitlebar]:not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar]):not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { height: calc( var(--tab-min-height) - var(--tabs-navbar-shadow-size) - 2px ); /* Compact: 28px, Normal: 33px, Touch: 38px */ @@ -4879,7 +4890,7 @@ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } #toolbar-menubar > .titlebar-buttonbox-container { @@ -4992,7 +5003,7 @@ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } #toolbar-menubar > .titlebar-buttonbox-container { @@ -5248,75 +5259,75 @@ --uc-window-drag-space-post: 0px; /* Same as .titlebar-spacer[type="post-tabs"] */ --uc-window-control-space: calc(var(--uc-window-control-width) + var(--uc-window-drag-space-post)); } - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: var(--uc-title-pre-spacer, 40px); --uc-window-drag-space-post: var(--uc-title-post-spacer, 40px); } @media (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 138px; } } @media (-moz-gtk-csd-available) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { /* 84px is default value of linux */ } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-maximize-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 28px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-close-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 56px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 84px; } } @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") { - :root[tabsintitlebar] { + :root:is([tabsintitlebar], [customtitlebar]) { --uc-window-control-width: 72px; } :root[sizemode="fullscreen"] { --uc-window-control-space: 0px; } } - :root:is([tabsintitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar][sizemode="maximized"], [customtitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } @supports -moz-bool-pref("userChrome.tabbar.one_liner") { @supports not -moz-bool-pref("userChrome.tabbar.one_liner.responsive") { @supports -moz-bool-pref("userChrome.tabbar.one_liner.tabbar_first") { @media (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @supports -moz-bool-pref("userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { --uc-window-control-space: 0px; } } @@ -5324,12 +5335,12 @@ @supports not -moz-bool-pref("userChrome.tabbar.one_liner.tabbar_first") { @supports not -moz-bool-pref("userChrome.tabbar.as_titlebar") { @media (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -5340,7 +5351,7 @@ @media screen and (max-width: 1100px) { @supports (not -moz-bool-pref("userChrome.tabbar.on_bottom")) or (not -moz-bool-pref("userChrome.hidden.tabbar")) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; --uc-window-control-space: 0px; } @@ -5349,27 +5360,27 @@ @media screen and (min-width: 1100px) { @supports -moz-bool-pref("userChrome.tabbar.one_liner.tabbar_first") { @media screen and (min-width: 1100px) and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @media screen and (min-width: 1100px) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media screen and (min-width: 1100px) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @supports -moz-bool-pref("userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { --uc-window-control-space: 0px; } } @@ -5377,12 +5388,12 @@ @supports not -moz-bool-pref("userChrome.tabbar.one_liner.tabbar_first") { @supports not -moz-bool-pref("userChrome.tabbar.as_titlebar") { @media screen and (min-width: 1100px) and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media screen and (min-width: 1100px) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -5460,11 +5471,11 @@ } } @media (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -5624,11 +5635,11 @@ } } @media (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -5785,11 +5796,11 @@ } } @media (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -5955,11 +5966,11 @@ } } @media screen and (max-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6132,11 +6143,11 @@ } } @media screen and (min-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6295,11 +6306,11 @@ } } @media screen and (min-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6714,7 +6725,7 @@ } /*= Tab Bar - Show only current tab ==========================================*/ @supports -moz-bool-pref("userChrome.tabbar.as_titlebar") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs, #scrollbutton-up, #scrollbutton-down, .titlebar-spacer[type="pre-tabs"], @@ -6783,8 +6794,10 @@ } } @supports -moz-bool-pref("browser.tabs.tabmanager.enabled") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) ~ #alltabs-button, - :root:not([tabsintitlebar="true"]) + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) + #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) + ~ #alltabs-button, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs[hasadjacentnewtabbutton]:not([overflow="true"]) ~ #new-tab-button { display: flex !important; @@ -8038,13 +8051,16 @@ --uc-newtab-bgcolor: var(--toolbarbutton-active-background); } @media (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { fill: color-mix(in srgb, AccentColorText 10%, transparent) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover:active { fill: color-mix(in srgb, AccentColorText 15%, transparent) !important; /* Hardcoded for compatibility */ } @supports -moz-bool-pref("userChrome.tab.bottom_rounded_corner") { @@ -8053,9 +8069,10 @@ ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.chrome_legacy") or -moz-bool-pref( "userChrome.tab.bottom_rounded_corner.chrome" ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.edge") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -8064,9 +8081,9 @@ ), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( @@ -8079,18 +8096,19 @@ } } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { fill: color-mix( in srgb, -moz-accent-color-foreground 10%, transparent ) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { fill: color-mix( in srgb, @@ -8104,9 +8122,13 @@ ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.chrome_legacy") or -moz-bool-pref( "userChrome.tab.bottom_rounded_corner.chrome" ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.edge") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -8115,9 +8137,12 @@ ), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( @@ -9970,7 +9995,7 @@ } @media (-moz-gtk-csd-available) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( + :root:is([tabsintitlebar], [customtitlebar])[sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( :not([lwtheme]), :not(:-moz-lwtheme) ) @@ -10224,24 +10249,24 @@ } } @supports selector(:has(a)) { - :root:not([tabsintitlebar]):has(#toolbar-menubar) { + :root:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar) { --uc-menubar-height: var(--uc-menubar-height-default); } @media (-moz-gtk-csd-available) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) + 2 * var(--tab-block-margin)); } } @media (-moz-platform: windows) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) - var(--tabs-navbar-shadow-size)); } } - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="false"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="false"]) { --uc-menubar-height: var(--uc-titlebar-buttonbox-height); } - :root:not([tabsintitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]), - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"][inactive="true"]) { + :root:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]), + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]) { --uc-menubar-height: 0px; } #navigator-toolbox:has(#PersonalToolbar[collapsed="true"]) { @@ -14064,7 +14089,7 @@ padding-inline-end: var(--arrowpanel-menuitem-padding-inline) !important; } /*= First visible tab margin at maximized #332 ===============================*/ - :root[tabsintitlebar="true"][sizemode="maximized"] #TabsToolbar { + :root:is([tabsintitlebar="true"], [customtitlebar="true"])[sizemode="maximized"] #TabsToolbar { margin-left: -1px; } /*= Disabled menu background color ===========================================*/ @@ -14220,18 +14245,18 @@ } } @media (-moz-bool-pref: "userChrome.compatibility.theme") { - :root[tabsintitlebar] #titlebar:-moz-window-inactive, - :root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive, - :root[tabsintitlebar] #TabsToolbar:-moz-window-inactive { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive, + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive, + :root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive { opacity: 1 !important; color: color-mix(in srgb, currentColor calc(var(--inactive-titlebar-opacity, 0.75) * 100%), transparent) !important; --inactive-toolbarbutton-icon-fill-opacity: calc( var(--toolbarbutton-icon-fill-opacity, 1) * var(--inactive-titlebar-opacity, 0.75) ); } - :root[tabsintitlebar] #titlebar:-moz-window-inactive .toolbarbutton-icon, - :root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive .toolbarbutton-icon, - :root[tabsintitlebar] #TabsToolbar:-moz-window-inactive .toolbarbutton-icon { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive .toolbarbutton-icon, + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive .toolbarbutton-icon, + :root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive .toolbarbutton-icon { fill-opacity: var(--inactive-toolbarbutton-icon-fill-opacity, 1); } } @@ -14269,20 +14294,20 @@ /*= Windows - Classic Theme #734 =============================================*/ } @media (-moz-bool-pref: "userChrome.compatibility.os") and (-moz-platform: windows) { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top: 0.5px solid rgb(47, 47, 47) !important; } - :root[sizemode="normal"][tabsintitlebar]:-moz-window-inactive #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]):-moz-window-inactive #navigator-toolbox { border-top-color: rgb(57, 57, 57) !important; } } @media (-moz-bool-pref: "userChrome.compatibility.os") and (-moz-platform: windows) and (-moz-windows-accent-color-in-titlebar) { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top-color: ActiveBorder !important; } } @media (-moz-bool-pref: "userChrome.compatibility.os") and (-moz-platform: windows) and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top-color: -moz-accent-color !important; } } @@ -14340,13 +14365,13 @@ } } @media (-moz-bool-pref: "userChrome.compatibility.os") and (-moz-platform: windows) and (not (-moz-bool-pref: "userChrome.compatibility.os.windows_maximized")) { - :root[tabsintitlebar] #titlebar { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar { /* -moz-default-appearance: -moz-window-titlebar */ appearance: none !important; } } @media (-moz-bool-pref: "userChrome.compatibility.os") and (-moz-platform: windows) and (-moz-bool-pref: "userChrome.compatibility.os.windows_maximized") { - :root[tabsintitlebar][sizemode="maximized"] #titlebar { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #titlebar { appearance: none !important; padding-top: 8px; } @@ -14372,14 +14397,16 @@ @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar), (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-gtk-csd-available) { /* URL Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --focus-outline-color: AccentColor !important; } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #urlbar[open] > #urlbar-background, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #urlbar[open] + > #urlbar-background { border-color: color-mix( in srgb, AccentColor 50%, @@ -14389,14 +14416,16 @@ } @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color"), (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-gtk-csd-available) and (-moz-bool-pref: "userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --focus-outline-color: -moz-accent-color !important; } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #urlbar[open] > #urlbar-background, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #urlbar[open] + > #urlbar-background { border-color: color-mix( in srgb, -moz-accent-color 50%, @@ -14655,8 +14684,8 @@ } } @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-platform: windows) and (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --toolbarseparator-color: color-mix(in srgb, currentColor 20%, transparent) !important; /* As default */ } } @@ -14825,30 +14854,38 @@ } @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar) { /* Tab Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .titlebar-color, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .titlebar-color, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .titlebar-color { color: AccentColorText; background-color: AccentColor; } } @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .titlebar-color, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .titlebar-color, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .titlebar-color { color: -moz-accent-color-foreground; background-color: -moz-accent-color; } } @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .toolbar-items, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .toolbar-items, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .toolbar-items { --toolbarbutton-icon-fill: currentColor; --toolbarbutton-hover-background: color-mix(in srgb, AccentColorText 10%, transparent); --toolbarbutton-active-background: color-mix(in srgb, AccentColorText 15%, transparent); } } @media (-moz-bool-pref: "userChrome.theme.system_default") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .toolbar-items, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .toolbar-items, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .toolbar-items { --toolbarbutton-hover-background: color-mix(in srgb, -moz-accent-color-foreground 10%, transparent); --toolbarbutton-active-background: color-mix(in srgb, -moz-accent-color-foreground 15%, transparent); } @@ -18263,13 +18300,13 @@ } } @media (-moz-bool-pref: "userChrome.padding.first_tab") and (not (-moz-bool-pref: "userChrome.padding.first_tab.always")) { - :root:not([tabsintitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs:not([positionpinnedtabs]) { padding-inline-start: var(--uc-space-left-tabbar) !important; } } @media (-moz-bool-pref: "userChrome.padding.first_tab") and (-moz-bool-pref: "userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs, + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs, :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs { padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width, 0px) + var(--uc-space-left-tabbar)) !important; } @@ -18442,22 +18479,22 @@ } } @media (-moz-bool-pref: "userChrome.padding.drag_space") and (-moz-platform: windows) { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar) - var(--tabs-navbar-shadow-size)); } } @media (-moz-bool-pref: "userChrome.padding.drag_space") and (-moz-platform: windows) and (-moz-bool-pref: "userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar) - var(--tabs-navbar-shadow-size)); } } @media (-moz-bool-pref: "userChrome.padding.drag_space") and (-moz-gtk-csd-available) { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar)); } } @media (-moz-bool-pref: "userChrome.padding.drag_space") and (-moz-gtk-csd-available) and (-moz-bool-pref: "userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar)); } } @@ -18584,7 +18621,7 @@ } } @media (-moz-bool-pref: "userChrome.padding.tabbar_height") { - :root[tabsintitlebar]:not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar]):not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { height: calc( var(--tab-min-height) - var(--tabs-navbar-shadow-size) - 2px ); /* Compact: 28px, Normal: 33px, Touch: 38px */ @@ -19079,7 +19116,7 @@ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } #toolbar-menubar > .titlebar-buttonbox-container { @@ -19186,7 +19223,7 @@ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } #toolbar-menubar > .titlebar-buttonbox-container { @@ -19466,7 +19503,7 @@ --uc-window-drag-space-post: 0px; /* Same as .titlebar-spacer[type="post-tabs"] */ --uc-window-control-space: calc(var(--uc-window-control-width) + var(--uc-window-drag-space-post)); } - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: var(--uc-title-pre-spacer, 40px); --uc-window-drag-space-post: var(--uc-title-post-spacer, 40px); } @@ -19475,7 +19512,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 138px; } } @@ -19483,7 +19520,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-gtk-csd-available), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-gtk-csd-available), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { /* 84px is default value of linux */ } } @@ -19499,7 +19536,7 @@ (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-maximize-button), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 28px; } } @@ -19515,7 +19552,7 @@ (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-close-button), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 56px; } } @@ -19523,7 +19560,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 84px; } } @@ -19531,7 +19568,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled"), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled"), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") { - :root[tabsintitlebar] { + :root:is([tabsintitlebar], [customtitlebar]) { --uc-window-control-width: 72px; } :root[sizemode="fullscreen"] { @@ -19542,7 +19579,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner"), (-moz-bool-pref: "userChrome.hidden.tabbar"), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar][sizemode="maximized"], [customtitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @@ -19550,7 +19587,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @@ -19558,7 +19595,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @@ -19566,7 +19603,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled"), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled"), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19574,7 +19611,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19582,7 +19619,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "userChrome.tabbar.as_titlebar"), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "userChrome.tabbar.as_titlebar"), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { --uc-window-control-space: 0px; } } @@ -19590,7 +19627,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-platform: windows), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19598,7 +19635,7 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19610,7 +19647,7 @@ screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (max-width: 1100px) and (not (-moz-bool-pref: "userChrome.hidden.tabbar")), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (max-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.on_bottom")), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (max-width: 1100px) and (not (-moz-bool-pref: "userChrome.hidden.tabbar")) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; --uc-window-control-space: 0px; } @@ -19619,7 +19656,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @@ -19627,7 +19664,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @@ -19635,7 +19672,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled"), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled"), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19643,7 +19680,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19651,7 +19688,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "userChrome.tabbar.as_titlebar"), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "userChrome.tabbar.as_titlebar"), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { --uc-window-control-space: 0px; } } @@ -19659,7 +19696,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19667,7 +19704,7 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0), screen and (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first")) and (not (-moz-bool-pref: "userChrome.tabbar.as_titlebar")) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -19795,11 +19832,11 @@ (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner")) and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner")) and (-moz-bool-pref: "userChrome.tabbar.on_bottom") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (not (-moz-bool-pref: "userChrome.tabbar.one_liner")) and (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -20035,11 +20072,11 @@ @media (-moz-bool-pref: "userChrome.tabbar.on_bottom") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -20242,11 +20279,11 @@ @media (-moz-bool-pref: "userChrome.tabbar.on_bottom") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive")) and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -20479,11 +20516,11 @@ screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (-moz-bool-pref: "userChrome.hidden.tabbar") and (max-width: 1100px) and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (-moz-bool-pref: "userChrome.tabbar.on_bottom") and (max-width: 1100px) and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (-moz-bool-pref: "userChrome.hidden.tabbar") and (max-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -20719,11 +20756,11 @@ @media screen and (-moz-bool-pref: "userChrome.tabbar.on_bottom") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "userChrome.tabbar.one_liner.tabbar_first") and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -20926,11 +20963,11 @@ @media screen and (-moz-bool-pref: "userChrome.tabbar.on_bottom") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") and (-moz-platform: windows), screen and (-moz-bool-pref: "userChrome.hidden.tabbar") and (not (-moz-bool-pref: "userChrome.hidden.titlebar_container")) and (-moz-bool-pref: "userChrome.tabbar.one_liner") and (-moz-bool-pref: "userChrome.tabbar.one_liner.responsive") and (min-width: 1100px) and (-moz-bool-pref: "layout.css.osx-font-smoothing.enabled") and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -21346,7 +21383,7 @@ } /*= Tab Bar - Show only current tab ==========================================*/ @media (-moz-bool-pref: "userChrome.tabbar.as_titlebar") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs, #scrollbutton-up, #scrollbutton-down, .titlebar-spacer[type="pre-tabs"], @@ -21414,8 +21451,10 @@ } } @media (-moz-bool-pref: "userChrome.tabbar.as_titlebar") and (-moz-bool-pref: "browser.tabs.tabmanager.enabled") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) ~ #alltabs-button, - :root:not([tabsintitlebar="true"]) + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) + #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) + ~ #alltabs-button, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs[hasadjacentnewtabbutton]:not([overflow="true"]) ~ #new-tab-button { display: flex !important; @@ -22822,13 +22861,16 @@ } } @media (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { fill: color-mix(in srgb, AccentColorText 10%, transparent) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover:active { fill: color-mix(in srgb, AccentColorText 15%, transparent) !important; /* Hardcoded for compatibility */ } } @@ -22837,8 +22879,10 @@ (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner.chrome_legacy"), (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner.chrome"), (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner.edge") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -22847,9 +22891,10 @@ ), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -22860,17 +22905,20 @@ } } @media (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { fill: color-mix( in srgb, -moz-accent-color-foreground 10%, transparent ) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover:active { fill: color-mix( in srgb, -moz-accent-color-foreground 15%, @@ -22883,8 +22931,10 @@ (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner.chrome_legacy"), (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner.chrome"), (-moz-bool-pref: "userChrome.tab.newtab_button_like_tab") and (-moz-windows-accent-color-in-titlebar) and (-moz-bool-pref: "userChrome.compatibility.accent_color") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner") and (-moz-bool-pref: "userChrome.tab.bottom_rounded_corner.edge") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -22893,9 +22943,10 @@ ), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -24870,7 +24921,10 @@ } @media (-moz-bool-pref: "userChrome.fullscreen.overlap") and (-moz-bool-pref: "browser.fullscreen.autohide") and (-moz-gtk-csd-available) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar])[sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) #TabsToolbar { appearance: auto !important; } @@ -25134,7 +25188,7 @@ (-moz-bool-pref: "userChrome.hidden.tabbar"), (-moz-bool-pref: "userChrome.navbar.as_sidebar") { @supports selector(:has(a)) { - :root:not([tabsintitlebar]):has(#toolbar-menubar) { + :root:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar) { --uc-menubar-height: var(--uc-menubar-height-default); } @media (-moz-bool-pref: "userChrome.autohide.tabbar") and (-moz-gtk-csd-available), @@ -25144,7 +25198,7 @@ (-moz-bool-pref: "userChrome.tabbar.on_bottom.menubar_on_top") and (-moz-gtk-csd-available), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-gtk-csd-available), (-moz-bool-pref: "userChrome.navbar.as_sidebar") and (-moz-gtk-csd-available) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) + 2 * var(--tab-block-margin)); } } @@ -25155,15 +25209,15 @@ (-moz-bool-pref: "userChrome.tabbar.on_bottom.menubar_on_top") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.hidden.tabbar") and (-moz-platform: windows), (-moz-bool-pref: "userChrome.navbar.as_sidebar") and (-moz-platform: windows) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) - var(--tabs-navbar-shadow-size)); } } - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="false"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="false"]) { --uc-menubar-height: var(--uc-titlebar-buttonbox-height); } - :root:not([tabsintitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]), - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"][inactive="true"]) { + :root:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]), + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]) { --uc-menubar-height: 0px; } #navigator-toolbox:has(#PersonalToolbar[collapsed="true"]) { diff --git a/css/leptonChromeESR.css b/css/leptonChromeESR.css index 2783f84..6a32286 100644 --- a/css/leptonChromeESR.css +++ b/css/leptonChromeESR.css @@ -59,7 +59,7 @@ padding-inline-end: var(--arrowpanel-menuitem-padding-inline) !important; } /*= First visible tab margin at maximized #332 ===============================*/ - :root[tabsintitlebar="true"][sizemode="maximized"] #TabsToolbar { + :root:is([tabsintitlebar="true"], [customtitlebar="true"])[sizemode="maximized"] #TabsToolbar { margin-left: -1px; } /*= Disabled menu background color ===========================================*/ @@ -183,18 +183,18 @@ align-items: center !important; } /*= Inactive transparent #882 ================================================*/ - :root[tabsintitlebar] #titlebar:-moz-window-inactive, - :root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive, - :root[tabsintitlebar] #TabsToolbar:-moz-window-inactive { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive, + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive, + :root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive { opacity: 1 !important; color: color-mix(in srgb, currentColor calc(var(--inactive-titlebar-opacity, 0.75) * 100%), transparent) !important; --inactive-toolbarbutton-icon-fill-opacity: calc( var(--toolbarbutton-icon-fill-opacity, 1) * var(--inactive-titlebar-opacity, 0.75) ); } - :root[tabsintitlebar] #titlebar:-moz-window-inactive .toolbarbutton-icon, - :root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive .toolbarbutton-icon, - :root[tabsintitlebar] #TabsToolbar:-moz-window-inactive .toolbarbutton-icon { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive .toolbarbutton-icon, + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive .toolbarbutton-icon, + :root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive .toolbarbutton-icon { fill-opacity: var(--inactive-toolbarbutton-icon-fill-opacity, 1); } /*= Tabpreviw transparent #890 ===============================================*/ @@ -223,20 +223,20 @@ @supports -moz-bool-pref("userChrome.compatibility.os") { /*= Windows 10 - Top border of accent color at ESR #358 ======================*/ @media (-moz-os-version: windows-win10), (-moz-platform: windows-win10) { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top: 0.5px solid rgb(47, 47, 47) !important; } - :root[sizemode="normal"][tabsintitlebar]:-moz-window-inactive #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]):-moz-window-inactive #navigator-toolbox { border-top-color: rgb(57, 57, 57) !important; } } @media (-moz-os-version: windows-win10) and (-moz-windows-accent-color-in-titlebar), (-moz-platform: windows-win10) and (-moz-windows-accent-color-in-titlebar) { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top-color: ActiveBorder !important; } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[sizemode="normal"][tabsintitlebar] #navigator-toolbox { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox { border-top-color: -moz-accent-color !important; } } @@ -433,7 +433,7 @@ (-moz-os-version: windows-win10), (-moz-platform: windows) { @supports not -moz-bool-pref("userChrome.compatibility.os.windows_maximized") { - :root[tabsintitlebar] #titlebar { + :root:is([tabsintitlebar], [customtitlebar]) #titlebar { /* -moz-default-appearance: -moz-window-titlebar */ appearance: none !important; } @@ -453,13 +453,13 @@ (-moz-platform: windows) and (-moz-platform: windows-win7), (-moz-platform: windows) and (-moz-os-version: windows-win8), (-moz-platform: windows) and (-moz-platform: windows-win8) { - :root[tabsintitlebar][sizemode="maximized"] #titlebar { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #titlebar { padding-top: 8px; } } } @supports -moz-bool-pref("userChrome.compatibility.os.windows_maximized") { - :root[tabsintitlebar][sizemode="maximized"] #titlebar { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #titlebar { appearance: none !important; padding-top: 8px; } @@ -470,18 +470,18 @@ (-moz-os-version: windows-win8) and (-moz-windows-classic), (-moz-os-version: windows-win10) and (-moz-windows-classic), (-moz-platform: windows) and (-moz-windows-classic) { - :root[tabsintitlebar][sizemode="normal"]:not(:-moz-lwtheme) #navigator-toolbox { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"]:not(:-moz-lwtheme) #navigator-toolbox { appearance: auto !important; -moz-default-appearance: -moz-window-titlebar !important; } - :root[tabsintitlebar][sizemode="maximized"]:not(:-moz-lwtheme) #navigator-toolbox { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"]:not(:-moz-lwtheme) #navigator-toolbox { appearance: auto !important; -moz-default-appearance: -moz-window-titlebar !important; } - :root[tabsintitlebar]:not(:-moz-lwtheme) #tabbrowser-arrowscrollbox { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-lwtheme) #tabbrowser-arrowscrollbox { color: -moz-dialogtext !important; } - :root[tabsintitlebar][sizemode="normal"] #navigator-toolbox:-moz-lwtheme { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #navigator-toolbox:-moz-lwtheme { background-image: linear-gradient( to bottom, ThreeDLightShadow 0, @@ -512,14 +512,14 @@ /*= Common - URL Bar focus color =============================================*/ @media (-moz-windows-accent-color-in-titlebar), (-moz-gtk-csd-available) { /* URL Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --focus-outline-color: AccentColor !important; } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #urlbar[open] > #urlbar-background, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background { border-color: color-mix( @@ -529,14 +529,14 @@ ) !important; /* Like: --toolbar-field-focus-border-color */ } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --focus-outline-color: -moz-accent-color !important; } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #urlbar[open] > #urlbar-background, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background { border-color: color-mix( @@ -836,8 +836,11 @@ @supports -moz-bool-pref("userChrome.theme.system_default") { @media (-moz-os-version: windows-win10) and (-moz-windows-accent-color-in-titlebar), (-moz-platform: windows-win10) and (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)), - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ), + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --toolbarseparator-color: color-mix(in srgb, currentColor 20%, transparent) !important; /* As default */ } } @@ -1019,27 +1022,35 @@ /*= Windows10 - Titlebar accent color ========================================*/ @media (-moz-windows-accent-color-in-titlebar) { /* Tab Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .titlebar-color, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .titlebar-color, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .titlebar-color { color: AccentColorText; background-color: AccentColor; } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .titlebar-color, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .titlebar-color, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .titlebar-color { color: -moz-accent-color-foreground; background-color: -moz-accent-color; } } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .toolbar-items, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .toolbar-items, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .toolbar-items { --toolbarbutton-icon-fill: currentColor; --toolbarbutton-hover-background: color-mix(in srgb, AccentColorText 10%, transparent); --toolbarbutton-active-background: color-mix(in srgb, AccentColorText 15%, transparent); } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) .toolbar-items, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + .toolbar-items, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + .toolbar-items { --toolbarbutton-hover-background: color-mix(in srgb, -moz-accent-color-foreground 10%, transparent); --toolbarbutton-active-background: color-mix(in srgb, -moz-accent-color-foreground 15%, transparent); } @@ -4407,13 +4418,13 @@ --uc-space-left-tabbar: 8px; /* If the option is not specified, it is equivalent to 0px. */ } @supports not -moz-bool-pref("userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs:not([positionpinnedtabs]) { padding-inline-start: var(--uc-space-left-tabbar) !important; } } @supports -moz-bool-pref("userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs, + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs, :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs { padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width, 0px) + var(--uc-space-left-tabbar)) !important; } @@ -4577,11 +4588,11 @@ --uc-space-above-tabbar: 8px; /* If the option is not specified, it is equivalent to 0px. */ } @media (-moz-os-version: windows-win10), (-moz-platform: windows-win10) { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar) - var(--tabs-navbar-shadow-size)); } @supports -moz-bool-pref("userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar) - var(--tabs-navbar-shadow-size)); } } @@ -4591,11 +4602,11 @@ (-moz-os-version: windows-win8), (-moz-platform: windows-win8), (-moz-gtk-csd-available) { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar)); } @supports -moz-bool-pref("userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { height: calc(var(--tab-min-height) + var(--uc-space-above-tabbar)); } } @@ -4732,7 +4743,7 @@ /* Original: calc(var(--tab-border-radius) + 4px) = 8px */ border-radius: var(--scrollbtn-border-radius, calc(var(--tab-border-radius) + 4px)) !important; } - :root[tabsintitlebar]:not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar]):not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { height: calc( var(--tab-min-height) - var(--tabs-navbar-shadow-size) - 2px ); /* Compact: 28px, Normal: 33px, Touch: 38px */ @@ -5241,7 +5252,7 @@ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } #toolbar-menubar > .titlebar-buttonbox-container { @@ -5354,7 +5365,7 @@ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } #toolbar-menubar > .titlebar-buttonbox-container { @@ -5610,7 +5621,7 @@ --uc-window-drag-space-post: 0px; /* Same as .titlebar-spacer[type="post-tabs"] */ --uc-window-control-space: calc(var(--uc-window-control-width) + var(--uc-window-drag-space-post)); } - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: var(--uc-title-pre-spacer, 40px); --uc-window-drag-space-post: var(--uc-title-post-spacer, 40px); } @@ -5618,48 +5629,48 @@ (-moz-platform: windows-win7), (-moz-os-version: windows-win8), (-moz-platform: windows-win8) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 105px; } } @media (-moz-os-version: windows-win10), (-moz-platform: windows-win10) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 138px; } } @media (-moz-gtk-csd-available) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { /* 84px is default value of linux */ } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-maximize-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 28px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-close-button), (-moz-gtk-csd-available) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 56px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-width: 84px; } } @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") { - :root[tabsintitlebar] { + :root:is([tabsintitlebar], [customtitlebar]) { --uc-window-control-width: 72px; } :root[sizemode="fullscreen"] { --uc-window-control-space: 0px; } } - :root:is([tabsintitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar][sizemode="maximized"], [customtitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } @supports -moz-bool-pref("userChrome.tabbar.one_liner") { @@ -5669,27 +5680,27 @@ (-moz-os-version: windows-win8), (-moz-os-version: windows-win10), (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @supports -moz-bool-pref("userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { --uc-window-control-space: 0px; } } @@ -5700,12 +5711,12 @@ (-moz-os-version: windows-win8), (-moz-os-version: windows-win10), (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -5716,7 +5727,7 @@ @media screen and (max-width: 1100px) { @supports (not -moz-bool-pref("userChrome.tabbar.on_bottom")) or (not -moz-bool-pref("userChrome.hidden.tabbar")) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; --uc-window-control-space: 0px; } @@ -5728,27 +5739,27 @@ screen and (min-width: 1100px) and (-moz-os-version: windows-win8), screen and (min-width: 1100px) and (-moz-os-version: windows-win10), screen and (min-width: 1100px) and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @media screen and (min-width: 1100px) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: 0px; } } @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media screen and (min-width: 1100px) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @supports -moz-bool-pref("userChrome.tabbar.as_titlebar") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) #tabbrowser-tabs { --uc-window-control-space: 0px; } } @@ -5759,12 +5770,12 @@ screen and (min-width: 1100px) and (-moz-os-version: windows-win8), screen and (min-width: 1100px) and (-moz-os-version: windows-win10), screen and (min-width: 1100px) and (-moz-platform: windows) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @media screen and (min-width: 1100px) and (-moz-gtk-csd-available) and (-moz-gtk-csd-reversed-placement: 0) { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-control-space: 0px; } } @@ -5845,14 +5856,14 @@ (-moz-os-version: windows-win8), (-moz-os-version: windows-win10), (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { --uc-titlebar-padding: 8px; } - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6015,14 +6026,14 @@ (-moz-os-version: windows-win8), (-moz-os-version: windows-win10), (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { --uc-titlebar-padding: 8px; } - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6182,14 +6193,14 @@ (-moz-os-version: windows-win8), (-moz-os-version: windows-win10), (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { --uc-titlebar-padding: 8px; } - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6359,14 +6370,14 @@ screen and (max-width: 1100px) and (-moz-os-version: windows-win8), screen and (max-width: 1100px) and (-moz-os-version: windows-win10), screen and (max-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { --uc-titlebar-padding: 8px; } - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6543,14 +6554,14 @@ screen and (min-width: 1100px) and (-moz-os-version: windows-win8), screen and (min-width: 1100px) and (-moz-os-version: windows-win10), screen and (min-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { --uc-titlebar-padding: 8px; } - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -6713,14 +6724,14 @@ screen and (min-width: 1100px) and (-moz-os-version: windows-win8), screen and (min-width: 1100px) and (-moz-os-version: windows-win10), screen and (min-width: 1100px) and (-moz-platform: windows) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { --uc-titlebar-padding: 8px; } - :root[sizemode="maximized"][tabsintitlebar] #navigator-toolbox-background { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #navigator-toolbox-background { margin-top: calc(-1 * var(--uc-titlebar-padding)); } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { @@ -7144,7 +7155,7 @@ } /*= Tab Bar - Show only current tab ==========================================*/ @supports -moz-bool-pref("userChrome.tabbar.as_titlebar") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs, #scrollbutton-up, #scrollbutton-down, .titlebar-spacer[type="pre-tabs"], @@ -7213,8 +7224,10 @@ } } @supports -moz-bool-pref("browser.tabs.tabmanager.enabled") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) ~ #alltabs-button, - :root:not([tabsintitlebar="true"]) + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) + #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) + ~ #alltabs-button, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs[hasadjacentnewtabbutton]:not([overflow="true"]) ~ #new-tab-button { display: flex !important; @@ -8468,13 +8481,16 @@ --uc-newtab-bgcolor: var(--toolbarbutton-active-background); } @media (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { fill: color-mix(in srgb, AccentColorText 10%, transparent) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover:active { fill: color-mix(in srgb, AccentColorText 15%, transparent) !important; /* Hardcoded for compatibility */ } @supports -moz-bool-pref("userChrome.tab.bottom_rounded_corner") { @@ -8483,9 +8499,10 @@ ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.chrome_legacy") or -moz-bool-pref( "userChrome.tab.bottom_rounded_corner.chrome" ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.edge") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -8494,9 +8511,9 @@ ), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( @@ -8509,18 +8526,19 @@ } } @supports -moz-bool-pref("userChrome.compatibility.accent_color") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { fill: color-mix( in srgb, -moz-accent-color-foreground 10%, transparent ) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { fill: color-mix( in srgb, @@ -8534,9 +8552,13 @@ ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.chrome_legacy") or -moz-bool-pref( "userChrome.tab.bottom_rounded_corner.chrome" ) or -moz-bool-pref("userChrome.tab.bottom_rounded_corner.edge") { - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( to left, @@ -8545,9 +8567,12 @@ ), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive):is(:not([lwtheme]), :not(:-moz-lwtheme)) + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient( @@ -10400,7 +10425,7 @@ } @media (-moz-gtk-csd-available) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( + :root:is([tabsintitlebar], [customtitlebar])[sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( :not([lwtheme]), :not(:-moz-lwtheme) ) @@ -10654,16 +10679,16 @@ } } @supports selector(:has(a)) { - :root:not([tabsintitlebar]):has(#toolbar-menubar) { + :root:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar) { --uc-menubar-height: var(--uc-menubar-height-default); } @media (-moz-gtk-csd-available) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) + 2 * var(--tab-block-margin)); } } @media (-moz-os-version: windows-win10), (-moz-platform: windows-win10) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) - var(--tabs-navbar-shadow-size)); } } @@ -10671,15 +10696,15 @@ (-moz-platform: windows-win7), (-moz-os-version: windows-win8), (-moz-platform: windows-win8) { - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { --uc-menubar-height: calc(var(--tab-min-height) + var(--tab-block-margin)); } } - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="false"]) { + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="false"]) { --uc-menubar-height: var(--uc-titlebar-buttonbox-height); } - :root:not([tabsintitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]), - :root[tabsintitlebar]:has(#toolbar-menubar[autohide="true"][inactive="true"]) { + :root:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]), + :root:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"][inactive="true"]) { --uc-menubar-height: 0px; } #navigator-toolbox:has(#PersonalToolbar[collapsed="true"]) { diff --git a/src/autohide/_common.scss b/src/autohide/_common.scss index 35ed7d7..7909372 100644 --- a/src/autohide/_common.scss +++ b/src/autohide/_common.scss @@ -48,11 +48,11 @@ } @include Has { :root { - &:not([tabsintitlebar]):has(#toolbar-menubar) { + &:not([tabsintitlebar]):not([customtitlebar]):has(#toolbar-menubar) { --uc-menubar-height: var(--uc-menubar-height-default); // text 1rem, menu padding 0.3em } - &[tabsintitlebar]:has(#toolbar-menubar[autohide="true"]) { + &:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="true"]) { @include OS($linux) { --uc-menubar-height: calc(var(--tab-min-height) + 2 * var(--tab-block-margin)); } @@ -63,12 +63,12 @@ --uc-menubar-height: calc(var(--tab-min-height) + var(--tab-block-margin)); } } - &[tabsintitlebar]:has(#toolbar-menubar[autohide="false"]) { + &:is([tabsintitlebar], [customtitlebar]):has(#toolbar-menubar[autohide="false"]) { --uc-menubar-height: var(--uc-titlebar-buttonbox-height); } - &:not([tabsintitlebar]), - &[tabsintitlebar] { + &:not([tabsintitlebar]):not([customtitlebar]), + &:is([tabsintitlebar], [customtitlebar]) { &:has(#toolbar-menubar[autohide="true"][inactive="true"]) { --uc-menubar-height: 0px; } diff --git a/src/compatibility/_os.scss b/src/compatibility/_os.scss index db4ace7..67f03f9 100644 --- a/src/compatibility/_os.scss +++ b/src/compatibility/_os.scss @@ -1,6 +1,6 @@ /*= Windows 10 - Top border of accent color at ESR #358 ======================*/ @include OS($win10) { - :root[sizemode=normal][tabsintitlebar] { + :root[sizemode=normal]:is([tabsintitlebar], [customtitlebar]) { #navigator-toolbox { border-top: .5px solid rgb(47, 47, 47) !important; } @@ -231,7 +231,7 @@ $_os_linuxDefaultShadow: 0 0 4px rgba(128, 128, 142, 0.5); /*= Titlebar Container Size at maximized #384 ================================*/ @include OS($win) { - :root[tabsintitlebar] { + :root:is([tabsintitlebar], [customtitlebar]) { @include NotOption("userChrome.compatibility.os.windows_maximized") { #titlebar { // Prevent #476 FF v105 above @@ -263,21 +263,21 @@ $_os_linuxDefaultShadow: 0 0 4px rgba(128, 128, 142, 0.5); // https://github.com/mozilla/gecko-dev/blob/4334cb91a3762ac497c50a1c7b86b8004690229e/browser/themes/windows/browser-aero.css#L71-L81 @include OS($win) { @include WinClassic { - :root[tabsintitlebar][sizemode="normal"]:not(:-moz-lwtheme) #navigator-toolbox { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"]:not(:-moz-lwtheme) #navigator-toolbox { appearance: auto !important; -moz-default-appearance: -moz-window-titlebar !important;; } - :root[tabsintitlebar][sizemode="maximized"]:not(:-moz-lwtheme) #navigator-toolbox { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"]:not(:-moz-lwtheme) #navigator-toolbox { appearance: auto !important;; -moz-default-appearance:-moz-window-titlebar !important;; } - :root[tabsintitlebar]:not(:-moz-lwtheme) #tabbrowser-arrowscrollbox { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-lwtheme) #tabbrowser-arrowscrollbox { color: -moz-dialogtext !important; } - :root[tabsintitlebar][sizemode="normal"] #navigator-toolbox:-moz-lwtheme { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #navigator-toolbox:-moz-lwtheme { background-image: linear-gradient( to bottom, ThreeDLightShadow 0, ThreeDLightShadow 1px, diff --git a/src/compatibility/_theme.scss b/src/compatibility/_theme.scss index 6daa9dc..a987fe4 100644 --- a/src/compatibility/_theme.scss +++ b/src/compatibility/_theme.scss @@ -35,7 +35,7 @@ menu.subviewbutton { } /*= First visible tab margin at maximized #332 ===============================*/ -:root[tabsintitlebar="true"][sizemode="maximized"] #TabsToolbar { +:root:is([tabsintitlebar="true"], [customtitlebar="true"])[sizemode="maximized"] #TabsToolbar { margin-left: -1px; } @@ -193,9 +193,9 @@ vbox[part="drop-indicator-bar"] > image[part="drop-indicator"] { } /*= Inactive transparent #882 ================================================*/ -:root[tabsintitlebar] #titlebar:-moz-window-inactive, -:root[tabsintitlebar] #toolbar-menubar:-moz-window-inactive, -:root[tabsintitlebar] #TabsToolbar:-moz-window-inactive { +:root:is([tabsintitlebar], [customtitlebar]) #titlebar:-moz-window-inactive, +:root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar:-moz-window-inactive, +:root:is([tabsintitlebar], [customtitlebar]) #TabsToolbar:-moz-window-inactive { opacity: 1 !important; color: color-mix(in srgb, currentColor calc(var(--inactive-titlebar-opacity, 0.75) * 100%), transparent) !important; --inactive-toolbarbutton-icon-fill-opacity: calc(var(--toolbarbutton-icon-fill-opacity, 1) * var(--inactive-titlebar-opacity, 0.75)); diff --git a/src/fullscreen/_overlap.scss b/src/fullscreen/_overlap.scss index dc1d49c..0f5669c 100644 --- a/src/fullscreen/_overlap.scss +++ b/src/fullscreen/_overlap.scss @@ -18,7 +18,7 @@ @include OS($linux) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"])#{$not_lwtheme} #TabsToolbar { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="fullscreen"]:not([inDOMFullscreen="true"])#{$not_lwtheme} #TabsToolbar { appearance: auto !important; } } diff --git a/src/padding/_drag_space.scss b/src/padding/_drag_space.scss index 07e0f75..fd3c427 100644 --- a/src/padding/_drag_space.scss +++ b/src/padding/_drag_space.scss @@ -6,11 +6,11 @@ //-- Mixin --------------------------------------------------------------------- @mixin _dragSpaceHeight { - :root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="normal"] #toolbar-menubar[autohide="true"] { @content; } @include Option("userChrome.padding.drag_space.maximized") { - :root[tabsintitlebar][sizemode="maximized"] #toolbar-menubar[autohide="true"] { + :root:is([tabsintitlebar], [customtitlebar])[sizemode="maximized"] #toolbar-menubar[autohide="true"] { @content; } } diff --git a/src/padding/_first_tab.scss b/src/padding/_first_tab.scss index 508a964..5684296 100644 --- a/src/padding/_first_tab.scss +++ b/src/padding/_first_tab.scss @@ -4,14 +4,14 @@ } @include NotOption("userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]), :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs:not([positionpinnedtabs]) { padding-inline-start: var(--uc-space-left-tabbar) !important; } } @include Option("userChrome.padding.first_tab.always") { - :root:not([tabsintitlebar]) #tabbrowser-tabs, + :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs, :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs { padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width, 0px) + var(--uc-space-left-tabbar)) !important; } diff --git a/src/padding/_tabbar_height.scss b/src/padding/_tabbar_height.scss index 8b0b6a9..1ebf47b 100644 --- a/src/padding/_tabbar_height.scss +++ b/src/padding/_tabbar_height.scss @@ -94,7 +94,7 @@ border-radius: var(--scrollbtn-border-radius, calc(var(--tab-border-radius) + 4px)) !important; } -:root[tabsintitlebar]:not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { +:root:is([tabsintitlebar], [customtitlebar]):not([uidensity="compact"]) #toolbar-menubar[autohide="true"] { height: calc( var(--tab-min-height) - var(--tabs-navbar-shadow-size) - 2px ); /* Compact: 28px, Normal: 33px, Touch: 38px */ diff --git a/src/tab/newtab_button/_looks_like_tab.scss b/src/tab/newtab_button/_looks_like_tab.scss index f6e7c8c..5450971 100644 --- a/src/tab/newtab_button/_looks_like_tab.scss +++ b/src/tab/newtab_button/_looks_like_tab.scss @@ -73,16 +73,16 @@ } @media (-moz-windows-accent-color-in-titlebar) { @include AccentColor { - :root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { fill: color-mix( in srgb, $accentTextColor 10%, transparent ) !important; /* Hardcoded for compatibility */ } - :root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover:active, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { fill: color-mix( in srgb, $accentTextColor 15%, @@ -98,14 +98,14 @@ "userChrome.tab.bottom_rounded_corner.chrome", "userChrome.tab.bottom_rounded_corner.edge" ) { - :root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient(to left, color-mix(in srgb, $accentTextColor 10%, transparent), color-mix(in srgb, $accentTextColor 10%, transparent)), var(--uc-tab-corner-right-side-svg); } - :root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover:active, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme} #tabs-newtab-button:hover:active, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #tabs-newtab-button:hover:active { background-image: var(--uc-tab-corner-left-side-svg), linear-gradient(to left, color-mix(in srgb, $accentTextColor 15%, transparent), color-mix(in srgb, $accentTextColor 15%, transparent)), var(--uc-tab-corner-right-side-svg); diff --git a/src/tabbar/_as_titlebar.scss b/src/tabbar/_as_titlebar.scss index bd0c6cd..01aa0fc 100644 --- a/src/tabbar/_as_titlebar.scss +++ b/src/tabbar/_as_titlebar.scss @@ -12,7 +12,7 @@ //------------------------------------------------------------------------------ -:root:not([tabsintitlebar="true"]) #tabbrowser-tabs, /* Show only */ +:root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs, /* Show only */ #scrollbutton-up, /* Defaults */ #scrollbutton-down, .titlebar-spacer[type="pre-tabs"], @@ -80,8 +80,8 @@ spacer:is([part="overflow-start-indicator"], [part="overflow-end-indicator"]), @include Option("browser.tabs.tabmanager.enabled") { - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) ~ #alltabs-button, - :root:not([tabsintitlebar="true"]) #tabbrowser-tabs[hasadjacentnewtabbutton]:not([overflow="true"]) ~ #new-tab-button { + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs:not([overflow="true"], [hashiddentabs]) ~ #alltabs-button, + :root:not([tabsintitlebar="true"]):not([customtitlebar="true"]) #tabbrowser-tabs[hasadjacentnewtabbutton]:not([overflow="true"]) ~ #new-tab-button { @include Box(true); } } diff --git a/src/tabbar/_on_bottom.scss b/src/tabbar/_on_bottom.scss index 55080d9..456a535 100644 --- a/src/tabbar/_on_bottom.scss +++ b/src/tabbar/_on_bottom.scss @@ -82,7 +82,7 @@ See the above repository for updates as well as full license text. */ width: 100%; overflow: hidden; } - :root[tabsintitlebar] #toolbar-menubar[autohide="true"]:not([inactive="true"]) { + :root:is([tabsintitlebar], [customtitlebar]) #toolbar-menubar[autohide="true"]:not([inactive="true"]) { height: var(--uc-menubar-height) !important; /* calc(var(--tab-min-height) + 2 * var(--tab-block-margin)) */ } diff --git a/src/tabbar/layout/_window_control.scss b/src/tabbar/layout/_window_control.scss index f86f624..6408745 100644 --- a/src/tabbar/layout/_window_control.scss +++ b/src/tabbar/layout/_window_control.scss @@ -53,7 +53,7 @@ See the above repository for updates as well as full license text. */ } @include OS($win) { - :root[sizemode="maximized"][tabsintitlebar] { + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) { @if mode.isESR() { --uc-titlebar-padding: 8px; } @@ -62,8 +62,8 @@ See the above repository for updates as well as full license text. */ margin-top: calc(-1 * var(--uc-titlebar-padding)); } } - :root[sizemode="normal"][tabsintitlebar] #titlebar, - :root[sizemode="maximized"][tabsintitlebar] #titlebar { + :root[sizemode="normal"]:is([tabsintitlebar], [customtitlebar]) #titlebar, + :root[sizemode="maximized"]:is([tabsintitlebar], [customtitlebar]) #titlebar { appearance: none !important; } .browser-toolbar:not(.titlebar-color) { diff --git a/src/tabbar/layout/_window_control_size.scss b/src/tabbar/layout/_window_control_size.scss index 6407d1b..d9c9a62 100644 --- a/src/tabbar/layout/_window_control_size.scss +++ b/src/tabbar/layout/_window_control_size.scss @@ -40,7 +40,7 @@ //------------------------------------------------------------------------------ -:root:is([tabsintitlebar], [sizemode="fullscreen"]) { +:root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { --uc-window-drag-space-pre: var(--uc-title-pre-spacer, 40px); // 30px --uc-window-drag-space-post: var(--uc-title-post-spacer, 40px); // 25px @@ -71,7 +71,7 @@ } } @include OS($mac) { - :root[tabsintitlebar] { + :root:is([tabsintitlebar], [customtitlebar]) { --uc-window-control-width: 72px; } :root[sizemode="fullscreen"] { @@ -79,12 +79,12 @@ } } -:root:is([tabsintitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { +:root:is([tabsintitlebar][sizemode="maximized"], [customtitlebar][sizemode="maximized"], [sizemode="fullscreen"]) { @include _remove_spacer_pre; } @include Option("userChrome.tabbar.one_liner") { - :root:is([tabsintitlebar], [sizemode="fullscreen"]) { + :root:is([tabsintitlebar], [customtitlebar], [sizemode="fullscreen"]) { @include NotOption("userChrome.tabbar.one_liner.responsive") { @include _remove_spacer_oneLiner; } diff --git a/src/theme/system_default_theme/_urlbar_focus_color.scss b/src/theme/system_default_theme/_urlbar_focus_color.scss index 029b598..eefdd96 100644 --- a/src/theme/system_default_theme/_urlbar_focus_color.scss +++ b/src/theme/system_default_theme/_urlbar_focus_color.scss @@ -1,7 +1,7 @@ /*= Common - URL Bar focus color =============================================*/ // TODO: `OS` Not covered case -$_urlBarFocusSelector: ":root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme}"; -$_urlBarFocusDarkSelector: ":root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive)"; +$_urlBarFocusSelector: ":root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme}"; +$_urlBarFocusDarkSelector: ":root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive)"; @media (-moz-windows-accent-color-in-titlebar), (-moz-gtk-csd-available) { /* URL Bar */ diff --git a/src/theme/system_default_theme/_win10.scss b/src/theme/system_default_theme/_win10.scss index 48d53be..be2e1af 100644 --- a/src/theme/system_default_theme/_win10.scss +++ b/src/theme/system_default_theme/_win10.scss @@ -244,8 +244,8 @@ @include Option("userChrome.theme.system_default") { @media (-moz-windows-accent-color-in-titlebar) { - :root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme}, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme}, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { --toolbarseparator-color: color-mix(in srgb, currentColor 20%, transparent) !important; /* As default */ } } @@ -371,8 +371,8 @@ /*= Windows10 - Titlebar accent color ========================================*/ @media (-moz-windows-accent-color-in-titlebar) { /* Tab Bar */ - :root[tabsintitlebar]:not(:-moz-window-inactive)#{$not_lwtheme}, - :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { + :root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme}, + :root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) { .titlebar-color { @include AccentColor { color: $accentTextColor;