From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- comm/mail/themes/linux/mail/messenger.css | 421 ++++++++++++++++++++++++++++++ 1 file changed, 421 insertions(+) create mode 100644 comm/mail/themes/linux/mail/messenger.css (limited to 'comm/mail/themes/linux/mail/messenger.css') diff --git a/comm/mail/themes/linux/mail/messenger.css b/comm/mail/themes/linux/mail/messenger.css new file mode 100644 index 0000000000..fdff68aacf --- /dev/null +++ b/comm/mail/themes/linux/mail/messenger.css @@ -0,0 +1,421 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +/* ===== messenger.css ================================================== + == Styles shared throughout the Messenger application. + ======================================================================= */ + +@import url("chrome://messenger/skin/shared/messenger.css"); + +/* Special rules for dark system theme and default TB theme */ + +:root[lwt-tree-brighttext]:not([lwt-tree]) { + --sidebar-background-color: var(--color-gray-80); + --sidebar-text-color: var(--color-gray-10); +} + +:root[lwt-tree-brighttext]:not([lwt-tree]) treechildren::-moz-tree-row(current, focus) { + --sidebar-highlight-background-color: var(--selected-item-color); + --sidebar-highlight-text-color: var(--selected-item-text-color); +} + +#tabs-toolbar { + --toolbarbutton-hover-background: var(--lwt-toolbarbutton-hover-background, + hsla(240, 5%, 5%, .1)); + --toolbarbutton-hover-bordercolor: var(--lwt-toolbarbutton-hover-background, + hsla(240, 5%, 5%, .1)); + --toolbarbutton-active-background: var(--lwt-toolbarbutton-active-background, + hsla(240, 5%, 5%, .15)); + --toolbarbutton-active-bordercolor: var(--lwt-toolbarbutton-active-background, + hsla(240, 5%, 5%, .15)); +} + +#tabs-toolbar[brighttext] { + --toolbarbutton-hover-background: var(--lwt-toolbarbutton-hover-background, + hsla(0, 0%, 70%, .4)); + --toolbarbutton-hover-bordercolor: var(--lwt-toolbarbutton-hover-background, + hsla(0, 0%, 70%, .4)); + --toolbarbutton-active-background: var(--lwt-toolbarbutton-active-background, + hsla(0, 0%, 70%, .6)); + --toolbarbutton-active-bordercolor: var(--lwt-toolbarbutton-active-background, + hsla(0, 0%, 70%, .6)); +} + +#navigation-toolbox { + appearance: none; + background-color: transparent; + border-top: none; +} + +.titlebar-buttonbox-container { + margin-inline-end: 6px; +} + +/** + * Titlebar drawing: + * + * We draw to titlebar when Gkt+ CSD is available. This is mostly + * straight-forward, but getting the window corners to look perfect is a bit + * tricky, as there are different variables to take into account. + * + * GTK windows have both a window radius (exposed via the + * `-moz-gtk-csd-titlebar-radius`) environment variable, and a window shadow + * (which we can't read back from GTK). Note that the native drawing does draw + * the shadow already. + * + * So there are multiple configurations to consider: + * + * * Whether we're using Wayland vs. X11 + * * Whether we're using a lightweight theme or not. + * + * Consider the simple case (default system theme). We render the titlebar + * using `-moz-default-appearance: -moz-window-titlebar;`, then don't draw + * anything else. Success! + * + * Now consider lightweight themes: We need to render the native titlebar + * behind the "theme" titlebar in order to render the native shadow on X11. But + * we can't just use the #navigation-toolbox as that's where the lightweight + * theme background goes, so we need to use the #navigation-toolbox-background. + * We still have to apply the corner radii to #navigation-toolbox of course, so + * the lightweight theme background doesn't overflow the titlebar radius. + * + * In a Wayland-only world, the setup could be much simpler: We could apply the + * titlebar appearance to #navigation-toolbox, and just apply the border radius + * on the or #navigation-toolbox-background to clip the extra shadow when + * using the system theme. For the lightweight theme, we could use + * appearance: none and the titlebar radius on the toolbox. In X11 however, we + * do need the native titlebar behind at all times. + */ +@media (-moz-gtk-csd-available) { + :root[tabsintitlebar][sizemode="normal"] { + background-color: transparent; + } + + :root[tabsintitlebar] #titlebar { + color: CaptionText; + } + + :root[tabsintitlebar] #titlebar:-moz-window-inactive { + color: InactiveCaptionText; + } + + :root[tabsintitlebar] #titlebar:-moz-lwtheme { + color: inherit; + } + + :root[tabsintitlebar] #navigation-toolbox-background { + appearance: auto; + -moz-default-appearance: -moz-window-titlebar-maximized; + } + + :root[tabsintitlebar][sizemode="normal"]:not([gtktiledwindow="true"]) #navigation-toolbox-background { + -moz-default-appearance: -moz-window-titlebar; + } + + :root[tabsintitlebar][sizemode="normal"]:not([gtktiledwindow="true"]) #navigation-toolbox:-moz-lwtheme, + :root[tabsintitlebar][sizemode="normal"]:not([gtktiledwindow="true"]) ::backdrop { + border-top-left-radius: env(-moz-gtk-csd-titlebar-radius); + border-top-right-radius: env(-moz-gtk-csd-titlebar-radius); + } + + /* Make #tabs-toolbar transparent as we style underlying #titlebar with + * -moz-window-titlebar (Gtk+ theme). */ + :root[tabsintitlebar] #tabs-toolbar, + :root[tabsintitlebar] #toolbar-menubar { + appearance: none; + color: inherit; + } + + :root[tabsintitlebar] #mail-menubar { + color: inherit; + } + + /* The button box must appear on top of the navigation-toolbox in order for + * click and hover mouse events to work properly for the button in the restored + * window state. Otherwise, elements in the navigation-toolbox, like the menubar, + * can swallow those events. */ + .titlebar-buttonbox { + position: relative; + z-index: 1; + align-items: center; + } + + /* Render titlebar command buttons according to system config. + * Use full scale icons here as the Gtk+ does. */ + .titlebar-min { + appearance: auto; + -moz-default-appearance: -moz-window-button-minimize; + order: env(-moz-gtk-csd-minimize-button-position); + } + .titlebar-max { + appearance: auto; + -moz-default-appearance: -moz-window-button-maximize; + order: env(-moz-gtk-csd-maximize-button-position); + } + .titlebar-restore { + appearance: auto; + -moz-default-appearance: -moz-window-button-restore; + order: env(-moz-gtk-csd-maximize-button-position); + } + .titlebar-close { + appearance: auto; + -moz-default-appearance: -moz-window-button-close; + order: env(-moz-gtk-csd-close-button-position); + } + + /* When using lightweight themes, use our own buttons since native ones might + * assume a native background in order to be visible. */ + .titlebar-button:-moz-lwtheme { + appearance: none !important; + border-radius: 100%; + margin-inline: 5px; + padding: 1px; + } + .titlebar-button > .toolbarbutton-icon:-moz-lwtheme { + display: inline-flex; + padding: 3px; + -moz-context-properties: stroke; + stroke: currentColor; + } + .titlebar-min:-moz-lwtheme { + list-style-image: url(chrome://messenger/skin/window-controls/minimize.svg); + } + .titlebar-max:-moz-lwtheme { + list-style-image: url(chrome://messenger/skin/window-controls/maximize.svg); + } + .titlebar-restore:-moz-lwtheme { + list-style-image: url(chrome://messenger/skin/window-controls/restore.svg); + } + .titlebar-close:-moz-lwtheme { + list-style-image: url(chrome://messenger/skin/window-controls/close.svg); + } + .titlebar-button:-moz-lwtheme:hover { + background-color: color-mix(in srgb, currentColor 20%, transparent); + } + .titlebar-button:-moz-lwtheme:hover:active { + background-color: color-mix(in srgb, currentColor 28%, transparent); + } + .titlebar-close:-moz-lwtheme:hover { + background-color: #d70022; + color: white; + } + .titlebar-close:-moz-lwtheme:hover:active { + background-color: #ff0039; + } + + @media not (-moz-gtk-csd-minimize-button) { + .titlebar-min { + display: none; + } + } + @media not (-moz-gtk-csd-maximize-button) { + .titlebar-restore, + .titlebar-max { + display: none; + } + } + @media not (-moz-gtk-csd-close-button) { + .titlebar-close { + display: none; + } + } + + @media (-moz-gtk-csd-reversed-placement) { + .titlebar-buttonbox-container { + margin-inline-start: 6px; + } + } +} + +toolbar:not(.inline-toolbar,.contentTabToolbar,:-moz-lwtheme) { + appearance: auto; + -moz-default-appearance: menubar; +} + +.inline-toolbar, +.contentTabToolbar { + appearance: none; + min-height: 15px; + padding: 0; +} + +.inline-toolbar > toolbarseparator { + height: 28px; +} + +menulist { + padding: 1px 6px !important; +} + +/* + * Override the menulist icon forbidding in menu.css so that we can show + * check-marks. radio-marks and folder icons. bug 443516 + */ +.menulist-menupopup > menuitem > .menu-iconic-left, +menulist > menupopup > + menuitem:is(.menuitem-iconic,[type="radio"],[type="checkbox"]) > + .menu-iconic-left, +.menulist-menupopup > menu > .menu-iconic-left, +menulist > menupopup > + menu:is(.menuitem-iconic,[type="radio"],[type="checkbox"]) > + .menu-iconic-left { + display: flex; +} + +/* ::::: Toolbar customization ::::: */ + +toolbarpaletteitem[place="toolbar"] > toolbarspacer { + width: 11px; +} + +/* ::::: toolbarbutton menu-button ::::: */ + +toolbarbutton[is="toolbarbutton-menu-button"] { + align-items: stretch; + appearance: auto; + -moz-default-appearance: dualbutton; + flex-direction: row !important; + padding: 0 !important; +} + +/* .......... dropmarker .......... */ + +.toolbarbutton-menubutton-dropmarker { + appearance: auto; + -moz-default-appearance: toolbarbutton-dropdown !important; + list-style-image: none; +} + +/* ::::: toolbarbutton ::::: */ + +.toolbarbutton-1, +.toolbarbutton-menubutton-button, +.toolbarbutton-1[is="toolbarbutton-menu-button"], +.toolbarbutton-1 .toolbarbutton-menu-dropmarker, +.toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker { + appearance: none; +} + +.toolbarbutton-1 .toolbarbutton-menu-dropmarker { + margin-inline-start: 3px; +} + +toolbar[mode="text"] .toolbarbutton-text { + margin: 0 !important; + padding-inline: 2px !important; +} + +.toolbarbutton-1[disabled=true] .toolbarbutton-icon, +.toolbarbutton-1[disabled=true] .toolbarbutton-text, +.toolbarbutton-1[disabled=true] .toolbarbutton-menu-dropmarker, +.toolbarbutton-1[disabled=true] > .toolbarbutton-menubutton-dropmarker { + opacity: .4; +} + +.sidebar-header .toolbarbutton-text:not([value]) { + display: none; +} + +button[is="toolbarbutton-menu-button"] > .button-box > button { + margin-block: -5px; +} + +/* message column icons */ + +.treecol-sortdirection { + appearance: none; + -moz-context-properties: fill; + fill: currentColor; +} + +treecol[sortDirection="ascending"]:not([hideheader="true"]) > .treecol-sortdirection { + list-style-image: url("chrome://global/skin/icons/arrow-down-12.svg"); +} + +treecol[sortDirection="descending"]:not([hideheader="true"]) > .treecol-sortdirection { + list-style-image: url("chrome://global/skin/icons/arrow-up-12.svg"); +} + +:root[lwt-tree] treecol:not([hideheader="true"]), +:root[lwt-tree] .tree-columnpicker-button:not([hideheader="true"]) { + padding-inline-start: 7px; + padding-inline-end: 6px; +} + +:root[lwt-tree] treechildren::-moz-tree-row(odd) { + background-color: transparent; +} + +:root[lwt-tree] treechildren::-moz-tree-row(hover) { + background-color: hsla(0, 0%, 50%, 0.15); +} + +treechildren::-moz-tree-cell-text { + padding-inline-start: 5px; +} + +/* Status panel */ + +.statuspanel-label { + margin: 0; + padding: 2px 4px; + background-color: -moz-dialog; + border: 1px none ThreeDShadow; + border-top-style: solid; + color: -moz-dialogText; + text-shadow: none; +} + +.statuspanel-label:-moz-locale-dir(ltr):not([mirror]), +.statuspanel-label:-moz-locale-dir(rtl)[mirror] { + border-right-style: solid; + border-top-right-radius: .3em; + margin-right: 1em; +} + +.statuspanel-label:-moz-locale-dir(rtl):not([mirror]), +.statuspanel-label:-moz-locale-dir(ltr)[mirror] { + border-left-style: solid; + border-top-left-radius: .3em; + margin-left: 1em; +} + +.contentTabInstance { + background-color: -moz-dialog; +} + +.contentTabInstance:-moz-lwtheme { + background-color: transparent; + background-image: linear-gradient(transparent 40px, -moz-dialog 40px); +} + +fieldset { + margin: 5px; + padding: 5px; + border: none; +} + +legend { + font-weight: bold; +} + +fieldset > hbox, +fieldset > vbox, +fieldset > radiogroup { + width: -moz-available; +} + +/* UI Density customization */ + +treechildren::-moz-tree-row { + min-height: 1.6rem; +} + +:root[uidensity="compact"] treechildren::-moz-tree-row { + min-height: 1.3rem; +} + +:root[uidensity="touch"] treechildren::-moz-tree-row { + min-height: 2.4rem; +} -- cgit v1.2.3