From 3de2350655275f81b7626635930b423c38a0c5dc Mon Sep 17 00:00:00 2001 From: Rafael Mardojai CM Date: Mon, 6 May 2019 22:31:56 -0500 Subject: [PATCH] Support left oriented window controls on CDS --- ui/parts/csd-left-controls.css | 73 ++++++++++++++++++++++++++++++++++ ui/parts/csd.css | 7 +--- 2 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 ui/parts/csd-left-controls.css diff --git a/ui/parts/csd-left-controls.css b/ui/parts/csd-left-controls.css new file mode 100644 index 0000000..8730795 --- /dev/null +++ b/ui/parts/csd-left-controls.css @@ -0,0 +1,73 @@ +@namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +@media (-moz-gtk-csd-reversed-placement) { + /* Navbar */ + :root[tabsintitlebar] #nav-bar { + padding-left: 7px !important; + padding-right: 3px !important; + position: relative; + } + + /* Window controls separator */ + :root[tabsintitlebar] #nav-bar::after { + left: 3px; + right: auto !important; + } + + /* Window buttons position */ + :root[tabsintitlebar] #titlebar .titlebar-buttonbox-container { + left: 0; + right: auto !important; + } + + :root[tabsintitlebar] #titlebar .titlebar-buttonbox { + padding-left: 3px; + padding-right: 0 !important;; + } + + /* Window controls: at least 1 button */ + @media (-moz-gtk-csd-minimize-button), (-moz-gtk-csd-maximize-button), (-moz-gtk-csd-close-button) { + :root[tabsintitlebar] #nav-bar { + margin-left: 43px; + margin-right: 0 !important; + } + } + /* Window controls: at least 2 buttons */ + @media (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button), + (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-close-button), + (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { + :root[tabsintitlebar] #nav-bar { + margin-left: 83px; + margin-right: 0 !important; + } + } + /* Window controls: 3 buttons */ + @media (-moz-gtk-csd-minimize-button) and (-moz-gtk-csd-maximize-button) and (-moz-gtk-csd-close-button) { + :root[tabsintitlebar] #nav-bar { + margin-left: 123px; + margin-right: 0 !important; + } + } + + /* CSD rounded corners */ + :root[tabsintitlebar]:not([sizemode="maximized"]):not([inFullscreen]) #nav-bar { + border-top-left-radius: 0 !important; + border-top-right-radius: 8px !important; + } + :root[tabsintitlebar]:not([sizemode="maximized"]):not([inFullscreen]) .titlebar-buttonbox { + border-top-left-radius: 8px !important; + border-top-right-radius: 0 !important; + } + + /* Fullscreen */ + :root[tabsintitlebar][inFullscreen] #nav-bar { + margin-left: 123px !important; + margin-right: 0 !important; + } + :root[tabsintitlebar][inFullscreen] #window-controls { + padding-left: 3px; + padding-right: 0 !important; + left: 0; + right: auto !important;; + } +} diff --git a/ui/parts/csd.css b/ui/parts/csd.css index 7ef4c3d..cd1688c 100644 --- a/ui/parts/csd.css +++ b/ui/parts/csd.css @@ -1,6 +1,7 @@ /* GNOME CSD styles for headerbar on Firefox [tabsintitlebar] */ @import "csd-fullscreen.css"; +@import "csd-left-controls.css"; @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* Navbar position */ @@ -98,12 +99,6 @@ list-style-image: url("moz-icon://stock/window-minimize-symbolic?size=dialog") !important; } -/* Blank spaces on tabs start and end */ -:root[tabsintitlebar] .titlebar-spacer { - border-inline-end: 0px !important; - width: 6px !important; -} - /* Fix the issue when dragging tabs */ :root[tabsintitlebar] #navigator-toolbox[movingtab] #TabsToolbar { padding-bottom: 0 !important;