зеркало из https://github.com/mozilla/gecko-dev.git
513 строки
13 KiB
CSS
513 строки
13 KiB
CSS
%if 0
|
|
/* 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/. */
|
|
%endif
|
|
|
|
@namespace html url("http://www.w3.org/1999/xhtml");
|
|
|
|
%include ../shared/browser.inc.css
|
|
/**
|
|
* We intentionally do not include browser-custom-colors.inc.css,
|
|
* instead choosing to fall back to system colours and transparencies
|
|
* in order to accomodate the wider variety of system themes on that
|
|
* platform.
|
|
*/
|
|
|
|
:root {
|
|
--toolbar-non-lwt-bgcolor: -moz-dialog;
|
|
--toolbar-non-lwt-textcolor: -moz-dialogtext;
|
|
--toolbar-non-lwt-bgimage: linear-gradient(rgba(255,255,255,.15), rgba(255,255,255,.15));
|
|
|
|
--toolbarbutton-border-radius: 4px;
|
|
--toolbarbutton-vertical-text-padding: calc(var(--toolbarbutton-inner-padding) - 1px);
|
|
--toolbarbutton-icon-fill-opacity: .85;
|
|
|
|
--panel-separator-color: ThreeDShadow;
|
|
--arrowpanel-dimmed: hsla(0,0%,80%,.3);
|
|
--arrowpanel-dimmed-further: hsla(0,0%,80%,.5);
|
|
--arrowpanel-dimmed-even-further: hsla(0,0%,80%,.8);
|
|
|
|
--urlbar-separator-color: ThreeDShadow;
|
|
|
|
--chrome-content-separator-color: ThreeDShadow;
|
|
}
|
|
|
|
@supports -moz-bool-pref("browser.proton.enabled") {
|
|
:root:not(:-moz-lwtheme) {
|
|
--focus-outline-color: -moz-accent-color;
|
|
}
|
|
} /*** END proton ***/
|
|
|
|
#navigator-toolbox {
|
|
--tabs-border-color: rgba(0,0,0,.3);
|
|
}
|
|
|
|
#tabbrowser-tabs {
|
|
--tab-line-color: -moz-accent-color;
|
|
}
|
|
|
|
:root:-moz-lwtheme {
|
|
--chrome-content-separator-color: rgba(0,0,0,.3);
|
|
|
|
--panel-separator-color: hsla(210,4%,10%,.14);
|
|
}
|
|
|
|
:root[lwt-popup-brighttext] {
|
|
--panel-separator-color: rgba(249,249,250,.1);
|
|
|
|
--arrowpanel-dimmed: rgba(249,249,250,.1);
|
|
--arrowpanel-dimmed-further: rgba(249,249,250,.15);
|
|
--arrowpanel-dimmed-even-further: rgba(249,249,250,.2);
|
|
}
|
|
|
|
#menubar-items {
|
|
-moz-box-orient: vertical; /* for flex hack */
|
|
}
|
|
|
|
#navigator-toolbox {
|
|
appearance: none;
|
|
background-color: transparent;
|
|
border-top: none;
|
|
}
|
|
|
|
.browser-toolbar {
|
|
padding: 0;
|
|
}
|
|
|
|
.browser-toolbar:not(.titlebar-color) {
|
|
background-color: var(--toolbar-bgcolor);
|
|
background-image: var(--toolbar-bgimage);
|
|
color: var(--toolbar-color);
|
|
appearance: none;
|
|
border-style: none;
|
|
}
|
|
|
|
#nav-bar:not([tabs-hidden="true"]) {
|
|
box-shadow: 0 calc(-1 * var(--tabs-navbar-shadow-size)) 0 var(--tabs-border-color);
|
|
/* This is needed for some toolbar button animations. Gross :( */
|
|
position: relative;
|
|
}
|
|
|
|
#browser-bottombox {
|
|
/* opaque for layers optimization */
|
|
background-color: -moz-Dialog;
|
|
}
|
|
|
|
/* Bookmark menus */
|
|
menu.bookmark-item,
|
|
menuitem.bookmark-item {
|
|
min-width: 0;
|
|
max-width: 32em;
|
|
}
|
|
|
|
.bookmark-item:not(.subviewbutton) > .menu-iconic-left {
|
|
margin-block: 0;
|
|
}
|
|
|
|
.bookmark-item > .menu-iconic-left > .menu-iconic-icon {
|
|
padding-inline-start: 0;
|
|
}
|
|
|
|
/* Bookmark drag and drop styles */
|
|
.bookmark-item[dragover-into="true"] {
|
|
background: Highlight !important;
|
|
color: HighlightText !important;
|
|
}
|
|
|
|
.bookmark-item[cutting] > .toolbarbutton-icon,
|
|
.bookmark-item[cutting] > .menu-iconic-left > .menu-iconic-icon {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.bookmark-item[cutting] > .toolbarbutton-text,
|
|
.bookmark-item[cutting] > .menu-iconic-left > .menu-iconic-text {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
%include ../shared/toolbarbuttons.inc.css
|
|
%include ../shared/toolbarbutton-icons.inc.css
|
|
%include ../shared/menupanel.inc.css
|
|
|
|
/* Fullscreen window controls */
|
|
|
|
#minimize-button,
|
|
#restore-button,
|
|
#close-button {
|
|
appearance: none;
|
|
padding: 6px 12px;
|
|
-moz-context-properties: stroke;
|
|
stroke: currentColor;
|
|
color: inherit;
|
|
}
|
|
|
|
#minimize-button {
|
|
list-style-image: url(chrome://browser/skin/window-controls/minimize.svg);
|
|
}
|
|
|
|
#restore-button {
|
|
list-style-image: url(chrome://browser/skin/window-controls/restore.svg);
|
|
}
|
|
|
|
#minimize-button:hover,
|
|
#restore-button:hover {
|
|
background-color: hsla(0,0%,0%,.12);
|
|
}
|
|
|
|
#minimize-button:hover:active,
|
|
#restore-button:hover:active {
|
|
background-color: hsla(0,0%,0%,.22);
|
|
}
|
|
|
|
#TabsToolbar[brighttext] > #window-controls > #minimize-button:hover,
|
|
#TabsToolbar[brighttext] > #window-controls > #restore-button:hover {
|
|
background-color: hsla(0,0%,100%,.12);
|
|
}
|
|
|
|
#TabsToolbar[brighttext] > #window-controls > #minimize-button:hover:active,
|
|
#TabsToolbar[brighttext] > #window-controls > #restore-button:hover:active {
|
|
background-color: hsla(0,0%,100%,.22);
|
|
}
|
|
|
|
#close-button {
|
|
list-style-image: url(chrome://browser/skin/window-controls/close.svg);
|
|
}
|
|
|
|
#close-button:hover {
|
|
background-color: #d70022;
|
|
stroke: white;
|
|
}
|
|
|
|
#close-button:hover:active {
|
|
background-color: #ff0039;
|
|
}
|
|
|
|
/* Address bar */
|
|
|
|
%include ../shared/urlbar-searchbar.inc.css
|
|
|
|
#urlbar,
|
|
#searchbar {
|
|
font-size: 1.05em;
|
|
}
|
|
|
|
@supports -moz-bool-pref("browser.urlbar.experimental.expandTextOnFocus") {
|
|
#urlbar[breakout-extend] {
|
|
font-size: 1.14em;
|
|
}
|
|
}
|
|
|
|
#urlbar:not(:-moz-lwtheme, [focused="true"]) > #urlbar-background,
|
|
#searchbar:not(:-moz-lwtheme, :focus-within) {
|
|
border-color: ThreeDShadow;
|
|
}
|
|
|
|
%include ../shared/identity-block/identity-block.inc.css
|
|
%include ../shared/notification-icons.inc.css
|
|
%include ../shared/addon-notification.inc.css
|
|
|
|
/* Address bar results view */
|
|
|
|
%include ../shared/urlbarView.inc.css
|
|
|
|
:root:not(:-moz-lwtheme) {
|
|
--urlbar-popup-url-color: -moz-nativehyperlinktext;
|
|
--urlbar-popup-action-color: -moz-nativehyperlinktext;
|
|
--autocomplete-popup-highlight-background: Highlight;
|
|
--autocomplete-popup-highlight-color: HighlightText;
|
|
}
|
|
|
|
/* Translation infobar */
|
|
|
|
%include ../shared/translation/infobar.inc.css
|
|
|
|
/* AutoComplete */
|
|
|
|
%include ../shared/autocomplete.inc.css
|
|
|
|
#PopupAutoComplete > richlistbox > richlistitem[originaltype~="datalist-first"] {
|
|
border-top: 1px solid ThreeDShadow;
|
|
}
|
|
|
|
/* Bookmarking panel */
|
|
|
|
%include ../shared/places/editBookmarkPanel.inc.css
|
|
|
|
/* Content area */
|
|
|
|
%include ../shared/sidebar.inc.css
|
|
|
|
#browser {
|
|
--sidebar-border-color: ThreeDShadow;
|
|
}
|
|
|
|
.sidebar-splitter {
|
|
appearance: none;
|
|
width: 6px;
|
|
background-color: -moz-dialog;
|
|
border: 1px ThreeDShadow;
|
|
border-style: none solid;
|
|
}
|
|
|
|
/* Tabstrip */
|
|
|
|
%include ../shared/tabs.inc.css
|
|
|
|
#tabbrowser-tabs {
|
|
/* override the global style to allow the selected tab to be above the nav-bar */
|
|
z-index: auto;
|
|
}
|
|
|
|
#TabsToolbar {
|
|
min-height: 0;
|
|
}
|
|
|
|
#TabsToolbar:not(:-moz-lwtheme) {
|
|
appearance: auto;
|
|
-moz-default-appearance: menubar;
|
|
color: -moz-menubartext;
|
|
}
|
|
|
|
#nav-bar {
|
|
-moz-window-dragging: drag;
|
|
}
|
|
|
|
@media (-moz-menubar-drag) {
|
|
#TabsToolbar {
|
|
-moz-window-dragging: drag;
|
|
}
|
|
}
|
|
|
|
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
|
.keyboard-focused-tab > .tab-stack > .tab-content,
|
|
.tabbrowser-tab:focus:not([aria-activedescendant]) > .tab-stack > .tab-content {
|
|
outline: 1px dotted;
|
|
outline-offset: -6px;
|
|
}
|
|
} /*** END !proton ***/
|
|
|
|
#context_reloadTab {
|
|
list-style-image: url("moz-icon://stock/gtk-refresh?size=menu");
|
|
}
|
|
|
|
#context_closeOtherTabs {
|
|
list-style-image: url("moz-icon://stock/gtk-clear?size=menu");
|
|
}
|
|
|
|
#context_closeOtherTabs[disabled] {
|
|
list-style-image: url("moz-icon://stock/gtk-clear?size=menu&state=disabled");
|
|
}
|
|
|
|
#context_undoCloseTab {
|
|
list-style-image: url("moz-icon://stock/gtk-undelete?size=menu");
|
|
}
|
|
|
|
#context_closeTab {
|
|
list-style-image: url("moz-icon://stock/gtk-close?size=menu");
|
|
}
|
|
|
|
/* All tabs menupopup */
|
|
|
|
.alltabs-item[selected="true"] {
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* 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;
|
|
}
|
|
|
|
@media (prefers-color-scheme: dark) {
|
|
#statuspanel-label {
|
|
background-color: hsl(240, 1%, 20%);
|
|
border-color: hsl(240, 1%, 40%);
|
|
color: rgb(249, 249, 250);
|
|
}
|
|
}
|
|
|
|
#statuspanel:not([mirror]) > #statuspanel-inner > #statuspanel-label:-moz-locale-dir(ltr),
|
|
#statuspanel[mirror] > #statuspanel-inner > #statuspanel-label:-moz-locale-dir(rtl) {
|
|
border-right-style: solid;
|
|
border-top-right-radius: .3em;
|
|
margin-right: 1em;
|
|
}
|
|
|
|
#statuspanel:not([mirror]) > #statuspanel-inner > #statuspanel-label:-moz-locale-dir(rtl),
|
|
#statuspanel[mirror] > #statuspanel-inner > #statuspanel-label:-moz-locale-dir(ltr) {
|
|
border-left-style: solid;
|
|
border-top-left-radius: .3em;
|
|
margin-left: 1em;
|
|
}
|
|
|
|
%include ../shared/fullscreen/warning.inc.css
|
|
%include ../shared/ctrlTab.inc.css
|
|
|
|
/* Customization mode */
|
|
|
|
%include ../shared/customizableui/customizeMode.inc.css
|
|
|
|
/* End customization mode */
|
|
|
|
%include ../shared/UITour.inc.css
|
|
|
|
#UITourHighlight {
|
|
/* Below are some fixes for people without an X compositor on Linux.
|
|
This is why we can't have nice things: */
|
|
/* Animations don't repaint properly without an X compositor. */
|
|
animation-name: none !important;
|
|
/* Opacity rounds to 0 or 1 on Linux without an X compositor, making the
|
|
background color not visible. Anti-aliasing is not available either. Make a
|
|
thicker outline and cancel border-radius for that case. */
|
|
outline: 4px solid rgb(0,200,215);
|
|
border-radius: 0 !important;
|
|
}
|
|
|
|
#UITourTooltipDescription {
|
|
font-size: 1.05rem;
|
|
}
|
|
|
|
#UITourTooltipClose {
|
|
margin-inline-end: -4px;
|
|
}
|
|
|
|
/**
|
|
* Override the --arrowpanel-padding so the background extends
|
|
* to the sides and bottom of the panel.
|
|
*/
|
|
#UITourTooltipButtons {
|
|
margin-inline-start: -10px;
|
|
margin-bottom: -10px;
|
|
}
|
|
|
|
%include ../shared/contextmenu.inc.css
|
|
|
|
#context-navigation > .menuitem-iconic > .menu-iconic-left {
|
|
/* override toolkit/themes/linux/global/menu.css */
|
|
padding-inline-end: 0 !important;
|
|
margin-inline-end: 0 !important;
|
|
}
|
|
|
|
.webextension-popup-browser,
|
|
.webextension-popup-stack {
|
|
border-radius: inherit;
|
|
}
|
|
|
|
/* We draw to titlebar when Gkt+ CSD is available */
|
|
@media (-moz-gtk-csd-available) {
|
|
/* Some Gtk+ themes use non-rectangular toplevel windows. To fully support
|
|
* such themes we need to make toplevel window transparent.
|
|
* It may cause performanance issues so let's put it under a preference
|
|
* and enable it for desktop environment which do that by default.
|
|
* See nsWindow::TopLevelWindowUseARGBVisual() for details. */
|
|
@media (-moz-gtk-csd-transparent-background) {
|
|
:root[tabsintitlebar][sizemode="normal"]:not(:-moz-lwtheme) {
|
|
background-color: transparent;
|
|
appearance: none;
|
|
}
|
|
}
|
|
|
|
:root[tabsintitlebar] #titlebar {
|
|
appearance: auto;
|
|
-moz-default-appearance: -moz-window-titlebar-maximized;
|
|
}
|
|
:root[tabsintitlebar][sizemode="normal"]:not([gtktiledwindow="true"]) #titlebar {
|
|
appearance: auto;
|
|
-moz-default-appearance: -moz-window-titlebar;
|
|
}
|
|
:root[tabsintitlebar]:not([inDOMFullscreen]) #titlebar:-moz-lwtheme {
|
|
visibility: hidden;
|
|
}
|
|
:root[tabsintitlebar]:not([inDOMFullscreen]) #toolbar-menubar:-moz-lwtheme,
|
|
:root[tabsintitlebar]:not([inDOMFullscreen]) #TabsToolbar:-moz-lwtheme {
|
|
visibility: visible;
|
|
}
|
|
|
|
/* When temporarily showing the menu bar, make it at least as tall as the tab
|
|
* bar such that the window controls don't appear to move up. */
|
|
:root[tabsintitlebar] #toolbar-menubar[autohide="true"] {
|
|
height: var(--tab-min-height);
|
|
}
|
|
:root[tabsintitlebar][sizemode="normal"] #toolbar-menubar[autohide="true"] {
|
|
height: calc(var(--tab-min-height) + var(--space-above-tabbar));
|
|
}
|
|
|
|
/* Add extra space to titlebar for dragging */
|
|
:root[sizemode="normal"][chromehidden~="menubar"] #TabsToolbar > .toolbar-items,
|
|
:root[sizemode="normal"] #toolbar-menubar[autohide="true"][inactive] + #TabsToolbar > .toolbar-items {
|
|
padding-top: var(--space-above-tabbar);
|
|
}
|
|
|
|
/* Make #TabsToolbar transparent as we style underlying #titlebar with
|
|
* -moz-window-titlebar (Gtk+ theme). */
|
|
:root[tabsintitlebar][sizemode="normal"]:not([inFullscreen]) #TabsToolbar,
|
|
:root[tabsintitlebar][sizemode="maximized"] #TabsToolbar,
|
|
:root[tabsintitlebar] #toolbar-menubar {
|
|
appearance: none;
|
|
}
|
|
|
|
/* The button box must appear on top of the navigator-toolbox in order for
|
|
* click and hover mouse events to work properly for the button in the restored
|
|
* window state. Otherwise, elements in the navigator-toolbox, like the menubar,
|
|
* can swallow those events. */
|
|
.titlebar-buttonbox {
|
|
z-index: 1;
|
|
-moz-box-align: center;
|
|
}
|
|
|
|
/* Render titlebar command buttons according to system config.
|
|
* Use full scale icons here as the Gtk+ does. */
|
|
@media (-moz-gtk-csd-minimize-button) {
|
|
.titlebar-min {
|
|
appearance: auto;
|
|
-moz-default-appearance: -moz-window-button-minimize;
|
|
}
|
|
}
|
|
@media (-moz-gtk-csd-minimize-button: 0) {
|
|
.titlebar-min {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
@media (-moz-gtk-csd-maximize-button) {
|
|
.titlebar-max {
|
|
appearance: auto;
|
|
-moz-default-appearance: -moz-window-button-maximize;
|
|
}
|
|
.titlebar-restore {
|
|
appearance: auto;
|
|
-moz-default-appearance: -moz-window-button-restore;
|
|
}
|
|
}
|
|
@media (-moz-gtk-csd-maximize-button: 0) {
|
|
.titlebar-restore,
|
|
.titlebar-max {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
@media (-moz-gtk-csd-close-button) {
|
|
.titlebar-close {
|
|
appearance: auto;
|
|
-moz-default-appearance: -moz-window-button-close;
|
|
}
|
|
}
|
|
@media (-moz-gtk-csd-close-button: 0) {
|
|
.titlebar-close {
|
|
display: none;
|
|
}
|
|
}
|
|
@media (-moz-gtk-csd-reversed-placement) {
|
|
.titlebar-buttonbox-container,
|
|
.titlebar-close {
|
|
-moz-box-ordinal-group: 0;
|
|
}
|
|
}
|
|
}
|