From 34413125125f1fb0159cc72a36a0ddd17645b152 Mon Sep 17 00:00:00 2001 From: alstjr7375 Date: Sat, 16 Nov 2024 15:14:09 +0900 Subject: [PATCH] Fix: Fullscreen - Bookmark overflow button when switching from DOM Fullscreen #685 --- css/leptonChrome.css | 23 +++++++++++++++-------- css/leptonChromeESR.css | 13 +++++++++---- src/fullscreen/_overlap.scss | 6 +++--- 3 files changed, 27 insertions(+), 15 deletions(-) diff --git a/css/leptonChrome.css b/css/leptonChrome.css index 96e9e09b..c7cd5503 100644 --- a/css/leptonChrome.css +++ b/css/leptonChrome.css @@ -9849,19 +9849,24 @@ /** Fullscreen - Overlap toolbar **********************************************/ @supports -moz-bool-pref("userChrome.fullscreen.overlap") { @supports -moz-bool-pref("browser.fullscreen.autohide") { - :root[sizemode="fullscreen"] #navigator-toolbox { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox { position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ } - :root[sizemode="fullscreen"] #navigator-toolbox:is(:hover, :focus-within) { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox:is(:hover, :focus-within) { margin-top: 0 !important; } - :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) + :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } @media (-moz-gtk-csd-available) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]:is(:not([lwtheme]), :not(:-moz-lwtheme)) #TabsToolbar { + :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) + #TabsToolbar { appearance: auto !important; } } @@ -24567,20 +24572,22 @@ } /** Fullscreen - Overlap toolbar **********************************************/ @media (-moz-bool-pref: "userChrome.fullscreen.overlap") and (-moz-bool-pref: "browser.fullscreen.autohide") { - :root[sizemode="fullscreen"] #navigator-toolbox { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox { position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ } - :root[sizemode="fullscreen"] #navigator-toolbox:is(:hover, :focus-within) { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox:is(:hover, :focus-within) { margin-top: 0 !important; } - :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) + :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } } @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"]:is(:not([lwtheme]), :not(:-moz-lwtheme)) #TabsToolbar { + :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is(:not([lwtheme]), :not(:-moz-lwtheme)) + #TabsToolbar { appearance: auto !important; } } diff --git a/css/leptonChromeESR.css b/css/leptonChromeESR.css index bbefec68..2c433804 100644 --- a/css/leptonChromeESR.css +++ b/css/leptonChromeESR.css @@ -10279,19 +10279,24 @@ /** Fullscreen - Overlap toolbar **********************************************/ @supports -moz-bool-pref("userChrome.fullscreen.overlap") { @supports -moz-bool-pref("browser.fullscreen.autohide") { - :root[sizemode="fullscreen"] #navigator-toolbox { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox { position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ } - :root[sizemode="fullscreen"] #navigator-toolbox:is(:hover, :focus-within) { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox:is(:hover, :focus-within) { margin-top: 0 !important; } - :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { + :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) + :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } @media (-moz-gtk-csd-available) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]:is(:not([lwtheme]), :not(:-moz-lwtheme)) #TabsToolbar { + :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"]):is( + :not([lwtheme]), + :not(:-moz-lwtheme) + ) + #TabsToolbar { appearance: auto !important; } } diff --git a/src/fullscreen/_overlap.scss b/src/fullscreen/_overlap.scss index 8f0ff5de..11f8dd95 100644 --- a/src/fullscreen/_overlap.scss +++ b/src/fullscreen/_overlap.scss @@ -1,4 +1,4 @@ -:root[sizemode="fullscreen"] #navigator-toolbox { +:root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox { position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ @@ -7,13 +7,13 @@ } } -:root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { +:root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } @include OS($linux) { /* Fix transparent background */ - :root[tabsintitlebar][sizemode="fullscreen"]#{$not_lwtheme} #TabsToolbar { + :root[tabsintitlebar][sizemode="fullscreen"]:not([inDOMFullscreen="true"])#{$not_lwtheme} #TabsToolbar { appearance: auto !important; } }