summaryrefslogtreecommitdiffstats
path: root/browser/themes/windows/browser-aero.css
diff options
context:
space:
mode:
Diffstat (limited to 'browser/themes/windows/browser-aero.css')
-rw-r--r--browser/themes/windows/browser-aero.css341
1 files changed, 341 insertions, 0 deletions
diff --git a/browser/themes/windows/browser-aero.css b/browser/themes/windows/browser-aero.css
new file mode 100644
index 0000000000..e5ace71f65
--- /dev/null
+++ b/browser/themes/windows/browser-aero.css
@@ -0,0 +1,341 @@
+/* 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/. */
+
+:root {
+ --glass-active-border-color: rgb(37, 44, 51);
+ --glass-inactive-border-color: rgb(102, 102, 102);
+ --glass-shadow-color: hsla(240,5%,5%,0.3);
+}
+
+@media (-moz-platform: windows-win7),
+ (-moz-platform: windows-win8) {
+ @media (-moz-windows-classic: 0) {
+ :root[sizemode="normal"] #toolbar-menubar:not([autohide="true"]) > #menubar-items,
+ :root[sizemode="normal"] #toolbar-menubar[autohide="true"][inactive] + #TabsToolbar > .toolbar-items {
+ margin-top: 1px;
+ }
+ /**
+ * Except for Windows 8, Windows 7 Aero and Windows 7 Aero Basic, the
+ * -moz-window-button-box appearance on the .titlebar-buttonbox adds an
+ * unwanted margin at the top of the button box.
+ *
+ * For Windows 8 and Windows Aero (which both use the compositor):
+ * We want the -moz-window-button-box applied in the restored case,
+ * and -moz-window-button-box-maximized in the maximized case.
+ *
+ * For Windows Aero Basic:
+ * The margin is also unwanted in the maximized case, but we want
+ * it in the restored window case.
+ */
+ :root[sizemode="normal"] .titlebar-buttonbox {
+ appearance: auto;
+ -moz-default-appearance: -moz-window-button-box;
+ }
+
+ @media (-moz-windows-compositor) {
+ :root[sizemode="maximized"] .titlebar-buttonbox {
+ appearance: auto;
+ -moz-default-appearance: -moz-window-button-box-maximized;
+ }
+ }
+ }
+}
+
+@media (-moz-windows-compositor) {
+ @media not (-moz-platform: windows-win7) {
+ @media not (-moz-platform: windows-win8) {
+ @media (-moz-windows-default-theme) {
+ @media (-moz-windows-accent-color-in-titlebar) {
+ :root[sizemode=normal][tabsintitlebar] #navigator-toolbox {
+ border-top: .5px solid AccentColor;
+ }
+ }
+
+ :root[sizemode=normal][tabsintitlebar]:-moz-window-inactive #navigator-toolbox {
+ border-top-color: rgb(57,57,57);
+ }
+
+ :root[tabsintitlebar] .tab-label:-moz-window-inactive {
+ /* Calculated to match the opacity change of Windows Explorer
+ titlebar text change for inactive windows. */
+ opacity: .6;
+ }
+
+ :root[tabsintitlebar] .tab-secondary-label:-moz-window-inactive {
+ opacity: .6;
+ }
+ }
+
+ /* See bug 1715990 about why we do this ourselves on HCM */
+ @media (prefers-contrast) {
+ :root[tabsintitlebar]:not(:-moz-lwtheme) {
+ background-color: ActiveCaption;
+ color: CaptionText;
+ }
+
+ :root[tabsintitlebar]:not(:-moz-lwtheme):-moz-window-inactive {
+ background-color: InactiveCaption;
+ color: InactiveCaptionText;
+ }
+ }
+
+ .titlebar-buttonbox,
+ .titlebar-button {
+ appearance: none !important;
+ }
+
+ .titlebar-button {
+ border: none;
+ margin: 0 !important;
+ padding: 8px 17px;
+ -moz-context-properties: stroke;
+ stroke: currentColor;
+ }
+
+ .titlebar-button > .toolbarbutton-icon {
+ width: 12px;
+ height: 12px;
+ }
+
+ .titlebar-min {
+ list-style-image: url(chrome://browser/skin/window-controls/minimize.svg);
+ }
+
+ .titlebar-max {
+ list-style-image: url(chrome://browser/skin/window-controls/maximize.svg);
+ }
+
+ .titlebar-restore {
+ list-style-image: url(chrome://browser/skin/window-controls/restore.svg);
+ }
+
+ .titlebar-restore > .toolbarbutton-icon:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+ }
+
+ .titlebar-close {
+ list-style-image: url(chrome://browser/skin/window-controls/close.svg);
+ }
+
+ :root[lwtheme-image] .titlebar-button {
+ -moz-context-properties: unset;
+ }
+ :root[lwtheme-image] .titlebar-min {
+ list-style-image: url(chrome://browser/skin/window-controls/minimize-themes.svg);
+ }
+ :root[lwtheme-image] .titlebar-max {
+ list-style-image: url(chrome://browser/skin/window-controls/maximize-themes.svg);
+ }
+ :root[lwtheme-image] .titlebar-restore {
+ list-style-image: url(chrome://browser/skin/window-controls/restore-themes.svg);
+ }
+ :root[lwtheme-image] .titlebar-close {
+ list-style-image: url(chrome://browser/skin/window-controls/close-themes.svg);
+ }
+
+ /* the 12px image renders a 10px icon, and the 10px upscaled gets rounded to 12.5, which
+ * rounds up to 13px, which makes the icon one pixel too big on 1.25dppx. Fix: */
+ @media (min-resolution: 1.20dppx) and (max-resolution: 1.45dppx) {
+ .titlebar-button > .toolbarbutton-icon {
+ width: 11.5px;
+ height: 11.5px;
+ }
+ }
+
+ /* 175% dpi should result in the same device pixel sizes as 150% dpi. */
+ @media (min-resolution: 1.70dppx) and (max-resolution: 1.95dppx) {
+ .titlebar-button {
+ padding-inline: 14.1px;
+ }
+
+ .titlebar-button > .toolbarbutton-icon {
+ width: 10.8px;
+ height: 10.8px;
+ }
+ }
+
+ /* 225% dpi should result in the same device pixel sizes as 200% dpi. */
+ @media (min-resolution: 2.20dppx) and (max-resolution: 2.45dppx) {
+ .titlebar-button {
+ padding-inline: 15.3333px;
+ }
+
+ .titlebar-button > .toolbarbutton-icon {
+ width: 10.8px;
+ height: 10.8px;
+ }
+ }
+
+ /* 275% dpi should result in the same device pixel sizes as 250% dpi. */
+ @media (min-resolution: 2.70dppx) and (max-resolution: 2.95dppx) {
+ /* NB: todo: this should also change padding on the buttons
+ * themselves, but without a device to test this on, it's
+ * impossible to know by how much. */
+ .titlebar-button > .toolbarbutton-icon {
+ width: 10.8px;
+ height: 10.8px;
+ }
+ }
+
+ @media (-moz-windows-default-theme) {
+ #main-menubar > menu[_moz-menuactive="true"] {
+ color: inherit;
+ }
+
+ #main-menubar > menu[_moz-menuactive="true"],
+ .titlebar-button:hover {
+ background-color: hsla(0,0%,0%,.12);
+ }
+ .titlebar-button:hover:active {
+ background-color: hsla(0,0%,0%,.22);
+ }
+
+ #toolbar-menubar[brighttext] > #menubar-items > #main-menubar > menu[_moz-menuactive="true"],
+ toolbar[brighttext] .titlebar-button:not(.titlebar-close):hover {
+ background-color: hsla(0,0%,100%,.22);
+ }
+ toolbar[brighttext] .titlebar-button:not(.titlebar-close):hover:active {
+ background-color: hsla(0,0%,100%,.32);
+ }
+
+ .titlebar-close:hover {
+ stroke: white;
+ background-color: hsl(355,86%,49%);
+ }
+ .titlebar-close:hover:active {
+ background-color: hsl(355,82%,69%);
+ }
+
+ .titlebar-button:not(:hover) > .toolbarbutton-icon:-moz-window-inactive {
+ opacity: 0.5;
+ }
+ }
+
+ @media (-moz-windows-default-theme: 0) {
+ .titlebar-button {
+ background-color: -moz-field;
+ stroke: ButtonText;
+ }
+ .titlebar-button:hover {
+ background-color: SelectedItem;
+ stroke: SelectedItemText;
+ }
+
+ .titlebar-min {
+ list-style-image: url(chrome://browser/skin/window-controls/minimize-highcontrast.svg);
+ }
+
+ .titlebar-max {
+ list-style-image: url(chrome://browser/skin/window-controls/maximize-highcontrast.svg);
+ }
+
+ .titlebar-restore {
+ list-style-image: url(chrome://browser/skin/window-controls/restore-highcontrast.svg);
+ }
+
+ .titlebar-close {
+ list-style-image: url(chrome://browser/skin/window-controls/close-highcontrast.svg);
+ }
+ }
+ }
+ }
+
+ @media (-moz-platform: windows-win7),
+ (-moz-platform: windows-win8) {
+ :root {
+ background-color: transparent;
+ appearance: auto;
+ -moz-default-appearance: -moz-win-borderless-glass;
+ }
+
+ :root[sizemode="maximized"] .titlebar-buttonbox {
+ margin-inline-end: 3px;
+ }
+
+ /* These should be hidden w/ glass enabled. Windows draws its own buttons. */
+ .titlebar-button {
+ display: none;
+ }
+
+ /* The borders on the glass frame are ours, and inside #browser, and on
+ * win7 we want to make sure they are "glassy", so we can't use #browser
+ * as the exclude-glass container. We use #appcontent instead. */
+ #appcontent {
+ appearance: auto;
+ -moz-default-appearance: -moz-win-exclude-glass;
+ }
+ }
+
+ @media (-moz-platform: windows-win8) {
+ /* Artificially draw window borders that are covered by lwtheme, see bug 591930.
+ * Borders for win7 are below, win10 only needs something like this when
+ * drawing in the titlebar (-moz-windows-accent-color-in-titlebar). */
+ #main-window[sizemode="normal"] #navigator-toolbox:-moz-lwtheme {
+ border-top: 1px solid var(--glass-shadow-color);
+ }
+ }
+
+ :root[darkwindowframe="true"]:not(:-moz-window-inactive, :-moz-lwtheme) {
+ color: white;
+ }
+
+ #appcontent:not(:-moz-lwtheme) {
+ background-color: -moz-dialog;
+ }
+}
+
+@media (-moz-windows-glass) {
+ #toolbar-menubar:not(:-moz-lwtheme) {
+ text-shadow: 0 0 .5em white, 0 0 .5em white, 0 1px 0 rgba(255,255,255,.4);
+ }
+
+ #main-menubar:not(:-moz-lwtheme, :-moz-window-inactive) {
+ background-color: rgba(255,255,255,.5);
+ color: black;
+ border-radius: 4px;
+ }
+
+ /* Artificially draw window borders that are covered by lwtheme, see bug 591930.
+ * We use a different border for win8, and this win10+ only needs this if
+ * drawing in the titlebar (-moz-windows-accent-color-in-titlebar). */
+ #main-window[sizemode="normal"] #navigator-toolbox:-moz-lwtheme {
+ border-top: 1px solid var(--glass-active-border-color);
+ padding-top: 1px;
+ box-shadow: 0 1px 0 rgba(255,255,255,.6) inset;
+ }
+
+ #main-window[sizemode="normal"] #navigator-toolbox:-moz-lwtheme:-moz-window-inactive {
+ border-top-color: var(--glass-inactive-border-color);
+ }
+}
+
+/* Aero Basic */
+@media (-moz-windows-compositor: 0) {
+ @media (-moz-windows-default-theme) {
+ :root {
+ background-color: rgb(185,209,234);
+ }
+ :root:-moz-window-inactive {
+ background-color: rgb(215,228,242);
+ }
+
+ /* Render a window top border for lwthemes: */
+ #main-window[tabsintitlebar][sizemode="normal"] #navigator-toolbox:-moz-lwtheme {
+ background-image: linear-gradient(to bottom,
+ var(--glass-active-border-color) 0, var(--glass-active-border-color) 1px,
+ rgba(255,255,255,.6) 1px, rgba(255,255,255,.6) 2px, transparent 2px);
+ }
+
+ #main-window[tabsintitlebar][sizemode="normal"] #navigator-toolbox:-moz-lwtheme:-moz-window-inactive {
+ background-image: linear-gradient(to bottom,
+ var(--glass-inactive-border-color) 0, var(--glass-inactive-border-color) 1px,
+ rgba(255,255,255,.6) 1px, rgba(255,255,255,.6) 2px, transparent 2px);
+ }
+ }
+
+ #print-preview-toolbar:not(:-moz-lwtheme) {
+ appearance: auto;
+ -moz-default-appearance: -moz-win-browsertabbar-toolbox;
+ }
+}