From 43a97878ce14b72f0981164f87f2e35e14151312 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:22:09 +0200 Subject: Adding upstream version 110.0.1. Signed-off-by: Daniel Baumann --- .../windows/global/arrow/panelarrow-vertical.svg | 7 + toolkit/themes/windows/global/autocomplete.css | 90 +++++ toolkit/themes/windows/global/button.css | 108 ++++++ toolkit/themes/windows/global/dialog.css | 23 ++ toolkit/themes/windows/global/dropmarker.css | 13 + toolkit/themes/windows/global/global.css | 199 +++++++++++ toolkit/themes/windows/global/icons/Landscape.png | Bin 0 -> 369 bytes toolkit/themes/windows/global/icons/Portrait.png | Bin 0 -> 413 bytes .../themes/windows/global/icons/Print-preview.png | Bin 0 -> 514 bytes toolkit/themes/windows/global/icons/menu-check.svg | 6 + .../themes/windows/global/icons/search-textbox.svg | 7 + .../themes/windows/global/icons/warning-large.png | Bin 0 -> 2443 bytes .../themes/windows/global/in-content/common.css | 23 ++ toolkit/themes/windows/global/jar.mn | 30 ++ toolkit/themes/windows/global/menu.css | 390 +++++++++++++++++++++ toolkit/themes/windows/global/menulist.css | 58 +++ toolkit/themes/windows/global/moz.build | 7 + toolkit/themes/windows/global/popup.css | 121 +++++++ toolkit/themes/windows/global/printPageSetup.css | 26 ++ toolkit/themes/windows/global/radio.css | 61 ++++ toolkit/themes/windows/global/richlistbox.css | 152 ++++++++ toolkit/themes/windows/global/search-textbox.css | 81 +++++ toolkit/themes/windows/global/splitter.css | 61 ++++ toolkit/themes/windows/global/tabbox.css | 51 +++ toolkit/themes/windows/global/tabprompts.css | 25 ++ toolkit/themes/windows/global/toolbar.css | 58 +++ toolkit/themes/windows/global/toolbarbutton.css | 98 ++++++ toolkit/themes/windows/global/tree/sort-asc.svg | 6 + toolkit/themes/windows/global/tree/sort-dsc.svg | 6 + toolkit/themes/windows/global/wizard.css | 53 +++ toolkit/themes/windows/moz.build | 7 + .../mozapps/downloads/unknownContentType.css | 40 +++ .../themes/windows/mozapps/handling/handling.css | 31 ++ toolkit/themes/windows/mozapps/jar.mn | 7 + toolkit/themes/windows/mozapps/moz.build | 7 + toolkit/themes/windows/mozapps/update/updates.css | 89 +++++ .../windows/mozapps/viewsource/viewsource.css | 5 + 37 files changed, 1946 insertions(+) create mode 100644 toolkit/themes/windows/global/arrow/panelarrow-vertical.svg create mode 100644 toolkit/themes/windows/global/autocomplete.css create mode 100644 toolkit/themes/windows/global/button.css create mode 100644 toolkit/themes/windows/global/dialog.css create mode 100644 toolkit/themes/windows/global/dropmarker.css create mode 100644 toolkit/themes/windows/global/global.css create mode 100644 toolkit/themes/windows/global/icons/Landscape.png create mode 100644 toolkit/themes/windows/global/icons/Portrait.png create mode 100644 toolkit/themes/windows/global/icons/Print-preview.png create mode 100644 toolkit/themes/windows/global/icons/menu-check.svg create mode 100644 toolkit/themes/windows/global/icons/search-textbox.svg create mode 100644 toolkit/themes/windows/global/icons/warning-large.png create mode 100644 toolkit/themes/windows/global/in-content/common.css create mode 100644 toolkit/themes/windows/global/jar.mn create mode 100644 toolkit/themes/windows/global/menu.css create mode 100644 toolkit/themes/windows/global/menulist.css create mode 100644 toolkit/themes/windows/global/moz.build create mode 100644 toolkit/themes/windows/global/popup.css create mode 100644 toolkit/themes/windows/global/printPageSetup.css create mode 100644 toolkit/themes/windows/global/radio.css create mode 100644 toolkit/themes/windows/global/richlistbox.css create mode 100644 toolkit/themes/windows/global/search-textbox.css create mode 100644 toolkit/themes/windows/global/splitter.css create mode 100644 toolkit/themes/windows/global/tabbox.css create mode 100644 toolkit/themes/windows/global/tabprompts.css create mode 100644 toolkit/themes/windows/global/toolbar.css create mode 100644 toolkit/themes/windows/global/toolbarbutton.css create mode 100644 toolkit/themes/windows/global/tree/sort-asc.svg create mode 100644 toolkit/themes/windows/global/tree/sort-dsc.svg create mode 100644 toolkit/themes/windows/global/wizard.css create mode 100644 toolkit/themes/windows/moz.build create mode 100644 toolkit/themes/windows/mozapps/downloads/unknownContentType.css create mode 100644 toolkit/themes/windows/mozapps/handling/handling.css create mode 100644 toolkit/themes/windows/mozapps/jar.mn create mode 100644 toolkit/themes/windows/mozapps/moz.build create mode 100644 toolkit/themes/windows/mozapps/update/updates.css create mode 100644 toolkit/themes/windows/mozapps/viewsource/viewsource.css (limited to 'toolkit/themes/windows') diff --git a/toolkit/themes/windows/global/arrow/panelarrow-vertical.svg b/toolkit/themes/windows/global/arrow/panelarrow-vertical.svg new file mode 100644 index 0000000000..50fe6b63b4 --- /dev/null +++ b/toolkit/themes/windows/global/arrow/panelarrow-vertical.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/toolkit/themes/windows/global/autocomplete.css b/toolkit/themes/windows/global/autocomplete.css new file mode 100644 index 0000000000..fdf931079e --- /dev/null +++ b/toolkit/themes/windows/global/autocomplete.css @@ -0,0 +1,90 @@ +/* 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/. */ + +/* ===== autocomplete.css ================================================= + == Styles used by the autocomplete widget. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +/* ::::: autocomplete ::::: */ + +html|input[nomatch="true"][highlightnonmatches="true"] { + color: red; +} + +/* ::::: autocomplete popups ::::: */ + +panel[type="autocomplete-richlistbox"] { + appearance: none; + --panel-color: FieldText; + --panel-background: Field; + --panel-padding: 0; +} + +/* ::::: richlistbox autocomplete ::::: */ + +.autocomplete-richlistbox { + appearance: none; + margin: 0; + border: 0; +} + +.autocomplete-richlistitem[selected] { + background-color: SelectedItem; + color: SelectedItemText; +} + +.ac-type-icon { + display: none; + width: 16px; + height: 16px; + max-width: 16px; + max-height: 16px; + margin-inline-start: 6px; + margin-inline-end: 6px; +} + +.ac-site-icon { + display: none; + width: 16px; + height: 16px; + max-width: 16px; + max-height: 16px; + margin-inline-start: 6px; + margin-inline-end: 8px; + list-style-image: url("chrome://global/skin/icons/defaultFavicon.svg"); + -moz-context-properties: fill; + fill: currentColor; +} + +.ac-title { + margin-inline-start: 0; + margin-inline-end: 6px; +} + +.ac-separator { + display: none; + margin-inline-start: 0; + margin-inline-end: 6px; +} + +.ac-url { + display: none; +} + +/* Better align the URL with the title. */ +.ac-separator, +.ac-url { + margin-bottom: -2px; +} + +.ac-title-text, +.ac-separator-text, +.ac-url-text, +.ac-text-overflow-container { + padding: 0 !important; + margin: 0 !important; +} diff --git a/toolkit/themes/windows/global/button.css b/toolkit/themes/windows/global/button.css new file mode 100644 index 0000000000..14a6be2e93 --- /dev/null +++ b/toolkit/themes/windows/global/button.css @@ -0,0 +1,108 @@ +/* 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/. */ + +/* ===== button.css ===================================================== + == Styles used by the XUL button element. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* :::::::::: button :::::::::: */ + +button { + margin: 1px 5px 2px; + min-width: 6.3em; + color: ButtonText; + background-color: ButtonFace; + text-shadow: none; + border: 1px solid ThreeDLightShadow; + padding: 2px 3px; + /* TODO: In Windows 11 perhaps we want some border-radius */ +} + +button:where(:hover) { + background-color: -moz-ButtonHoverFace; +} + +button:where(:hover:active) { + background-color: -moz-ButtonActiveFace; +} + +.button-text { + margin: 0; + text-align: center; +} + +/* .......... focused state .......... */ + +button:focus-visible { + outline: var(--default-focusring); + outline-offset: calc(-1 * var(--default-focusring-width) - 2px); +} + +@media (prefers-color-scheme: dark) { + button:focus-visible { + outline: 1px auto; + outline-offset: initial; + } +} + +/* .......... default/hover/focused state .......... */ + +@media (prefers-contrast) and (-moz-windows-compositor) { + /* This is for high-contrast black and white themes on Windows 8 and later, + where the native appearance renders a different background (which + appears to be equivalent to the Highlight color) if the button is in the + default, hovered or focused state. However, if these states overlap with + the active, disabled, open or checked state, the appearance reverts back + to the default background. */ + button:where([default="true"],:hover,:focus):where(:not(:active,[disabled="true"],[open="true"],[checked="true"])) { + color: HighlightText; + } +} + +/* .......... disabled state .......... */ + +button:where([disabled="true"]) { + color: GrayText; + background-color: ButtonFace; +} + +@media (-moz-windows-classic) { + button:where([disabled="true"]) { + color: ThreeDShadow; + text-shadow: 1px 1px ThreeDHighlight; + } +} + +/* ::::: menu buttons ::::: */ + +.button-menu-dropmarker { + appearance: none; + list-style-image: url("chrome://global/skin/icons/arrow-down-12.svg"); + -moz-context-properties: fill; + fill: currentColor; + width: 12px; + height: 12px; +} + +/* ::::: plain buttons ::::: */ + +button.plain { + margin: 0 !important; + padding: 0 !important; +} + +button[type="disclosure"] { + margin: 0; + appearance: none; + list-style-image: url("chrome://global/skin/icons/arrow-right-12.svg"); + -moz-context-properties: fill; + fill: currentColor; + min-width: 0; +} + +button[type="disclosure"][open="true"] { + list-style-image: url("chrome://global/skin/icons/arrow-down-12.svg"); +} diff --git a/toolkit/themes/windows/global/dialog.css b/toolkit/themes/windows/global/dialog.css new file mode 100644 index 0000000000..16e47fa412 --- /dev/null +++ b/toolkit/themes/windows/global/dialog.css @@ -0,0 +1,23 @@ +/* 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/. */ + +/* ===== dialog.css ===================================================== + == Styles used by the XUL dialog element. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* ::::: dialog ::::: */ + +:host { + padding-block: 8px 10px; + padding-inline: 8px 10px; +} + +/* ::::: dialog buttons ::::: */ + +button { + font: menu; + margin-top: 6px; +} diff --git a/toolkit/themes/windows/global/dropmarker.css b/toolkit/themes/windows/global/dropmarker.css new file mode 100644 index 0000000000..02a20182d8 --- /dev/null +++ b/toolkit/themes/windows/global/dropmarker.css @@ -0,0 +1,13 @@ +/* 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/. */ + +:host { + appearance: auto; + -moz-default-appearance: -moz-menulist-arrow-button; + width: 16px; + height: 16px; + /* Cut off inheritance for dropmarkers within other widgets where + -moz-image-region might be set for the primary icon. */ + -moz-image-region: auto; +} diff --git a/toolkit/themes/windows/global/global.css b/toolkit/themes/windows/global/global.css new file mode 100644 index 0000000000..c3c5ada1be --- /dev/null +++ b/toolkit/themes/windows/global/global.css @@ -0,0 +1,199 @@ +/* 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/. */ + +/* ===== global.css ===================================================== + == Styles that apply everywhere. + ======================================================================= */ + +@import url("chrome://global/skin/global-shared.css"); + +@namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +:root { + background-color: -moz-Dialog; + color: -moz-DialogText; + font: message-box; +} + +@media (-moz-windows-non-native-menus) { + :root { + /* Override some menu color variables for light browser themes. */ + --menu-icon-opacity: 0.7; + } + + /* Override the menu color variables for dark browser themes. */ + @media (prefers-color-scheme: dark) { + :root { + --menu-icon-opacity: 1; + } + } +} + +@media (prefers-contrast) { + :root { + /* In high-contrast mode on Windows, ThreeDLightShadow provides more + contrast than ThreeDShadow. See bug 1022564. */ + --arrowpanel-border-color: ThreeDLightShadow; + } +} + +/* ::::: Alert icons :::::*/ + +.message-icon, +.alert-dialog #infoIcon, +.alert-icon, +.error-icon, +.question-icon { + width: 32px; + height: 32px; + -moz-context-properties: fill; + fill: currentColor; +} + +.message-icon { + list-style-image: url("chrome://global/skin/icons/info.svg"); +} + +.alert-dialog #infoIcon, +.alert-icon { + list-style-image: url("chrome://global/skin/icons/warning.svg"); + fill: #ffa436; +} + +.error-icon { + list-style-image: url("chrome://global/skin/icons/error.svg"); + fill: #e22850; +} + +.question-icon { + list-style-image: url("chrome://global/skin/icons/help.svg"); + -moz-context-properties: fill, fill-opacity; + fill-opacity: 0.8; +} + +/* XXX(ntim): [mode="text"] is only used by comm-central */ + +xul|toolbar[mode="text"] .toolbarbutton-text { + padding: 0 !important; + margin: 3px 5px !important; +} + +/* ::::: Print preview ::::: */ + +.print-preview-navigate-button { + min-width: 1.9em; +} + +.print-preview-navigate-button > .toolbarbutton-icon { + display: none; +} + +#print-preview-portrait-button { + list-style-image: url("chrome://global/skin/icons/Print-preview.png"); + -moz-image-region: rect(0px 16px 16px 0px); +} + +#print-preview-landscape-button { + list-style-image: url("chrome://global/skin/icons/Print-preview.png"); + -moz-image-region: rect(0px 32px 16px 16px); +} + +#print-preview-portrait-button > .toolbarbutton-icon, +#print-preview-landscape-button > .toolbarbutton-icon { + margin-inline-end: 2px; +} + +html|*#print-preview-pageNumber { + /* 3 chars + (3px border + 1px padding) on both sides */ + width: calc(8px + 3ch); + margin: 0 4px; +} + +/* Separators */ + +xul|separator:not([orient="vertical"]) { + height: 1.5em; +} +xul|separator[orient="vertical"] { + width: 1.5em; +} + +xul|separator.thin:not([orient="vertical"]) { + height: 0.5em; +} +xul|separator.thin[orient="vertical"] { + width: 0.5em; +} + +xul|separator.groove:not([orient="vertical"]) { + border-top: 1px solid ThreeDShadow; + border-bottom: 1px solid ThreeDHighlight; + height: 0; + margin-block: 0.4em; +} +xul|separator.groove[orient="vertical"] { + border-left: 1px solid ThreeDShadow; + border-right: 1px solid ThreeDHighlight; + width: 0; + margin-inline: 0.4em; +} + +/* Windows classic disabled labels */ + +@media (-moz-windows-classic) { + xul|label[disabled="true"] { + color: ThreeDShadow; + text-shadow: 1px 1px ThreeDHighlight; + } +} + +/* Input margins */ + +html|input { + margin: 2px 4px; +} + +/* Content select */ + +.contentSelectDropdown-ingroup > .menu-iconic-text { + padding-inline-start: 20px; +} + +#ContentSelectDropdown > menupopup > menucaption, +#ContentSelectDropdown > menupopup > menuitem { + padding: 0 6px; + border-width: 0; +} + +#ContentSelectDropdown > menupopup { + font: -moz-list; +} + +#ContentSelectDropdown > menupopup > menucaption > .menu-iconic-text, +#ContentSelectDropdown > menupopup > menuitem > .menu-iconic-text { + /* Padding should follow the 4/12 ratio, where 12px is the default font-size + with 4px being the preferred padding size. */ + padding-block: .3333em; +} + +#ContentSelectDropdown > menupopup > menucaption > .menu-iconic-text { + font-weight: bold; +} + +#ContentSelectDropdown > menupopup > menuitem[_moz-menuactive="true"][disabled="true"] { + color: GrayText; + background-color: unset; +} + +#ContentSelectDropdown > menupopup > menucaption[disabled="true"] { + color: GrayText; +} + +#ContentSelectDropdown > .isOpenedViaTouch > menucaption > .menu-iconic-text, +#ContentSelectDropdown > .isOpenedViaTouch > menuitem > .menu-iconic-text { + /* Touch padding should follow the 11/12 ratio, where 12px is the default + font-size with 11px being the preferred padding size. */ + padding-block: .9167em; +} diff --git a/toolkit/themes/windows/global/icons/Landscape.png b/toolkit/themes/windows/global/icons/Landscape.png new file mode 100644 index 0000000000..fad822281e Binary files /dev/null and b/toolkit/themes/windows/global/icons/Landscape.png differ diff --git a/toolkit/themes/windows/global/icons/Portrait.png b/toolkit/themes/windows/global/icons/Portrait.png new file mode 100644 index 0000000000..afe9ee83f0 Binary files /dev/null and b/toolkit/themes/windows/global/icons/Portrait.png differ diff --git a/toolkit/themes/windows/global/icons/Print-preview.png b/toolkit/themes/windows/global/icons/Print-preview.png new file mode 100644 index 0000000000..51c760159c Binary files /dev/null and b/toolkit/themes/windows/global/icons/Print-preview.png differ diff --git a/toolkit/themes/windows/global/icons/menu-check.svg b/toolkit/themes/windows/global/icons/menu-check.svg new file mode 100644 index 0000000000..48778afb42 --- /dev/null +++ b/toolkit/themes/windows/global/icons/menu-check.svg @@ -0,0 +1,6 @@ + + + + diff --git a/toolkit/themes/windows/global/icons/search-textbox.svg b/toolkit/themes/windows/global/icons/search-textbox.svg new file mode 100644 index 0000000000..c2d9f3a8eb --- /dev/null +++ b/toolkit/themes/windows/global/icons/search-textbox.svg @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/toolkit/themes/windows/global/icons/warning-large.png b/toolkit/themes/windows/global/icons/warning-large.png new file mode 100644 index 0000000000..7e30398c8c Binary files /dev/null and b/toolkit/themes/windows/global/icons/warning-large.png differ diff --git a/toolkit/themes/windows/global/in-content/common.css b/toolkit/themes/windows/global/in-content/common.css new file mode 100644 index 0000000000..d9ee9ba31b --- /dev/null +++ b/toolkit/themes/windows/global/in-content/common.css @@ -0,0 +1,23 @@ +/* - 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/. */ + +@import url("chrome://global/skin/in-content/common-shared.css"); + +@namespace html "http://www.w3.org/1999/xhtml"; +@namespace xul "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; + +xul|checkbox, +xul|radio { + padding-inline-start: 0; +} + +/* Override menulist.css */ +xul|menulist[disabled="true"] { + background-color: var(--in-content-button-background); +} + +html|button { + /* XUL button min-width */ + min-width: 6.3em; +} diff --git a/toolkit/themes/windows/global/jar.mn b/toolkit/themes/windows/global/jar.mn new file mode 100644 index 0000000000..447161c4b8 --- /dev/null +++ b/toolkit/themes/windows/global/jar.mn @@ -0,0 +1,30 @@ +# 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/. + +#include ../../shared/desktop-non-mac.jar.inc.mn + +toolkit.jar: + skin/classic/global/autocomplete.css + skin/classic/global/button.css + skin/classic/global/dropmarker.css + skin/classic/global/menu.css + skin/classic/global/menulist.css + skin/classic/global/radio.css + skin/classic/global/tabbox.css + skin/classic/global/search-textbox.css + skin/classic/global/global.css + skin/classic/global/popup.css + skin/classic/global/printPageSetup.css + skin/classic/global/richlistbox.css + skin/classic/global/splitter.css + skin/classic/global/toolbar.css + skin/classic/global/toolbarbutton.css + skin/classic/global/icons/Landscape.png (icons/Landscape.png) + skin/classic/global/icons/menu-check.svg (icons/menu-check.svg) + skin/classic/global/icons/Portrait.png (icons/Portrait.png) + skin/classic/global/icons/Print-preview.png (icons/Print-preview.png) + skin/classic/global/icons/warning-large.png (icons/warning-large.png) + skin/classic/global/in-content/common.css (in-content/common.css) + skin/classic/global/tree/sort-asc.svg (tree/sort-asc.svg) + skin/classic/global/tree/sort-dsc.svg (tree/sort-dsc.svg) diff --git a/toolkit/themes/windows/global/menu.css b/toolkit/themes/windows/global/menu.css new file mode 100644 index 0000000000..274ad2ab12 --- /dev/null +++ b/toolkit/themes/windows/global/menu.css @@ -0,0 +1,390 @@ +/* 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/. */ + +@import url("chrome://global/skin/menu-scrolling.css"); + +/* ===== menu.css ======================================================= + == Styles used by XUL menu-related elements. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* ::::: menu/menuitem ::::: */ + +menupopup, +menubar { + font: menu; +} + +menu, +menuitem, +menucaption { + appearance: auto; + -moz-default-appearance: menuitem; + -moz-box-align: center; + list-style-image: none; + -moz-image-region: auto; +} + +@media (-moz-windows-non-native-menus) { + /* For Windows 10, prevent using native OS drawing of certain menu elements, + especially background colors and shadows. */ + menu, menuitem, menucaption { + appearance: none; + } + + /* Menu item text also needs native drawing disabled. */ + menu > .menu-text, + menuitem > .menu-text, + menu > .menu-iconic-text, + menuitem > .menu-iconic-text { + appearance: none; + margin-inline-start: 0 !important; /* need !important to override the other !important below... */ + padding-inline-end: 0; + } +} + +menu:where([disabled="true"]), +menuitem:where([disabled="true"]), +menu:where([_moz-menuactive="true"][disabled="true"]), +menuitem:where([_moz-menuactive="true"][disabled="true"]) { + color: GrayText; + text-shadow: none; +} + +@media (-moz-windows-non-native-menus) { + menu:where([_moz-menuactive="true"][disabled="true"]), + menuitem:where([_moz-menuactive="true"][disabled="true"]) { + background-color: -moz-menuhoverdisabled; + } +} + +@media (-moz-windows-classic) { + menu[disabled="true"], + menubar > menu[disabled="true"][_moz-menuactive="true"], + menuitem[disabled="true"] { + color: ThreeDShadow; + text-shadow: 1px 1px ThreeDHighlight; + } +} + +menuitem[default="true"], +menuitem.spell-suggestion, +menucaption { + font-weight: bold; +} + +menubar > menu:-moz-window-inactive { + color: ThreeDShadow; +} + +/* ..... Internal content .... */ + +.menu-accel, +.menu-iconic-accel, +.menu-text, +.menu-iconic-text { + margin: 0 !important; + padding: 1px 0; +} + +.menu-text { + padding-inline-start: 1.45em !important; + appearance: auto; + -moz-default-appearance: menuitemtext; +} + +.menu-text, +.menu-iconic-text { + margin-inline-start: 2px !important; + padding-inline-end: 2px; +} + +.menu-accel, +.menu-iconic-accel { + margin-inline: 0.74em 1.35em !important; +} + +.menu-iconic-left { + width: 1.45em; +} + +.menu-iconic-icon { + width: 16px; + height: 16px; +} + +.menu-iconic > .menu-iconic-left, +.menuitem-iconic > .menu-iconic-left { + appearance: auto; + -moz-default-appearance: menuimage; + padding-top: 2px; +} + +/* Don't leave space for icons on Win10. */ +@media (-moz-windows-non-native-menus) { + .menu-text { + padding-inline-start: 0 !important; + } +} + +/* ..... menu arrow box ..... */ + +.menu-right { + appearance: auto; + -moz-default-appearance: menuarrow; + margin-inline-end: -2px; + list-style-image: none; + width: 1.28em; + padding-top: 1px; +} + +/* Override the native menu arrow with a custom one for Win10. */ +@media (-moz-windows-non-native-menus) { + .menu-right { + appearance: none; + width: unset; + list-style-image: url("chrome://global/skin/icons/arrow-right.svg"); + -moz-context-properties: fill, fill-opacity; + fill: currentColor; + fill-opacity: var(--menu-icon-opacity); + margin-inline-end: 1em; + padding-top: 0; + } + + .menu-right > image { + /* Do not make this smaller than the size of the svg, but upscale for + * people with large fonts. */ + width: max(1em, 16px); + } + + .menu-right:-moz-locale-dir(rtl) { + list-style-image: url("chrome://global/skin/icons/arrow-left.svg"); + } +} + +/* ::::: menu/menuitems in menubar ::::: */ + +menubar > menu[_moz-menuactive="true"]:not([disabled="true"]) { + color: -moz-menubarhovertext; +} + +@media (-moz-windows-classic) { + menubar > menu { + border: 2px solid transparent; + } + + menubar > menu[_moz-menuactive="true"][open="true"] { + border-width: 3px 1px 1px 3px; + } +} + +menubar > menu:-moz-lwtheme { + appearance: none; + border-color: transparent; +} + +menubar > menu:-moz-lwtheme:not([disabled="true"]) { + color: inherit; +} + +menubar > menu:-moz-lwtheme[_moz-menuactive="true"]:not([disabled="true"]) { + background-color: SelectedItem; + color: SelectedItemText; + text-shadow: none; +} + +@media (-moz-windows-default-theme) { + menubar > menu:-moz-lwtheme { + appearance: auto; + -moz-default-appearance: menuitem; + } + + menubar > menu:-moz-lwtheme[_moz-menuactive="true"]:not([disabled="true"]) { + color: inherit !important; + text-shadow: inherit; + } +} + +/* ..... internal content .... */ + +.menubar-text { + margin: 1px 6px 2px !important; +} + +/* ::::: menu/menuitems in popups ::::: */ + +menupopup > menu, +menupopup > menuitem, +menupopup > menucaption { + max-width: 42em; +} + +menu:where([_moz-menuactive="true"]:not([disabled="true"])), +menuitem:where([_moz-menuactive="true"]:not([disabled="true"])) { + background-color: -moz-menuhover; + color: -moz-menuhovertext; +} + +/* ::::: menu/menuitems in menulist popups ::::: */ + +menulist > menupopup > menuitem, +menulist > menupopup > menucaption, +menulist > menupopup > menu { + max-width: none; +} + +@media (-moz-windows-non-native-menus) { + menulist > menupopup > menuitem { + padding-inline-end: 1em; + } +} + +@media not (-moz-windows-non-native-menus) { + menulist > menupopup > menuitem, + menulist > menupopup > menucaption, + menulist > menupopup > menu { + appearance: none !important; + border: 1px solid transparent; + padding-inline: 5px; + } + + menulist > menupopup > menuitem[_moz-menuactive="true"], + menulist > menupopup > menu[_moz-menuactive="true"] { + background-color: highlight; + color: highlighttext; + } +} + +menulist > menupopup > menuitem > .menu-iconic-left, +menulist > menupopup > menucaption > .menu-iconic-left, +menulist > menupopup > menu > .menu-iconic-left { + display: none; +} + +menulist > menupopup > menuitem > label, +menulist > menupopup > menucaption > label, +menulist > menupopup > menu > label { + padding-block: 0; +} + +menulist:-moz-focusring > menupopup > menuitem[_moz-menuactive="true"] { + border: 1px dotted #F5DB95; +} + +menulist > menupopup > menuitem[_moz-menuactive="true"][disabled="true"] { + color: GrayText; +} + +@media (-moz-windows-classic) { + menulist > menupopup > menuitem[disabled="true"]:not([_moz-menuactive="true"]) { + color: GrayText; + text-shadow: none; + } +} + +menulist > menupopup > :is(menuitem, menucaption):not(.menuitem-iconic) > .menu-iconic-text { + margin: 0 !important; +} + +/* ::::: checkbox and radio menuitems ::::: */ + +menuitem:is([type="checkbox"], [checked="true"]) { + appearance: auto; + -moz-default-appearance: checkmenuitem; +} + +menuitem:is([type="checkbox"], [checked="true"]) > .menu-iconic-left { + appearance: auto; + -moz-default-appearance: menucheckbox; + padding-top: 0; +} + +menuitem[type="radio"] { + appearance: auto; + -moz-default-appearance: radiomenuitem; +} + +menuitem[type="radio"] > .menu-iconic-left { + appearance: auto; + -moz-default-appearance: menuradio; + padding-top: 0; +} + +menuitem:is([type="checkbox"], [checked="true"], [type="radio"]) > .menu-iconic-left > .menu-iconic-icon { + /* prevent .menu-iconic-icon from enforcing a minimal height of 16px (see bug 411064) + XXXzeniko apply that .menu-iconic-icon rule only for children of .menu-iconic */ + display: none; +} + +@media (-moz-windows-non-native-menus) { + menupopup[needsgutter] menu:not([icon], .menu-iconic), + menupopup[needsgutter] menuitem:not([checked="true"], [icon], .menuitem-iconic) { + padding-inline-start: 36px; + } + + /* For Windows 10, checkbox, radio and iconified menuitems need the default + appearance disabled so they pick up our custom styles instead. */ + .menu-iconic-left, + menuitem[type="checkbox"], + menuitem[type="radio"] { + appearance: none !important; /* to override more specific selectors above. */ + width: unset; + } + + .menu-iconic > .menu-iconic-left, + .menuitem-iconic > .menu-iconic-left { + margin-inline-end: 8px; + } + + menuitem[checked="true"] { + padding-inline-start: 12px; + } + + /* We need to do something to override the default style for selected + checkboxes and radio buttons because the native drawing we use on other + Windows versions looks pretty bad with the Win10 styles, so for now we'll + insert a generic checkmark icon for both types. */ + menuitem[checked="true"] > .menu-iconic-left { + -moz-context-properties: fill, fill-opacity; + fill: currentColor; + fill-opacity: var(--menu-icon-opacity); + list-style-image: url("chrome://global/skin/icons/menu-check.svg"); + width: 16px; + margin-inline-end: 8px; + } + menuitem[checked="true"] > .menu-iconic-left > .menu-iconic-icon { + display: initial; + } +} + +/* ::::: menuseparator ::::: */ + +menuseparator { + appearance: auto; + -moz-default-appearance: menuseparator; + padding: 3px 1px 4px; + border-top: 1px solid ThreeDShadow; + border-bottom: 1px solid ThreeDHighlight; +} + +@media not (-moz-windows-non-native-menus) { + menulist > menupopup > menuseparator { + padding: 6px 0 5px; + border-top: 1px solid #000000; + border-bottom: none; + } +} + +/* On Windows 10, separators get entirely custom rendering. */ +@media (-moz-windows-non-native-menus) { + menuseparator { + appearance: none; + + border-bottom: none; + padding: 0; + /* The side margins should align with the start of the menu item text. */ + margin: 2px 1em; + } +} diff --git a/toolkit/themes/windows/global/menulist.css b/toolkit/themes/windows/global/menulist.css new file mode 100644 index 0000000000..2c33e0b44a --- /dev/null +++ b/toolkit/themes/windows/global/menulist.css @@ -0,0 +1,58 @@ +/* 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/. */ + +@import url("chrome://global/skin/menulist-shared.css"); + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +label { + margin: 0 3px; +} + +:host([native]) { + appearance: auto; + -moz-default-appearance: menulist; + margin: 2px 4px; + color: FieldText; + text-shadow: none; +} + +:host([native][disabled="true"]) { + background-color: -moz-Dialog; + color: GrayText; +} + +/* Label box */ + +#label-box[native] { + -moz-box-align: center; + -moz-box-pack: center; +} + +:host([native]:not([open="true"]):focus) > #label-box { + background-color: SelectedItem; + color: SelectedItemText; +} + +:host([native]:not([open="true"]):-moz-focusring) > #label-box { + outline: var(--default-focusring); +} + + +@media (-moz-windows-default-theme) { + #label-box[native] { + background-color: transparent !important; + color: inherit !important; + } + + image[native], + label[native] { + margin-block: -1px !important; + } + + dropmarker[native] { + margin-top: -2px; + margin-inline: 3px -3px; + } +} diff --git a/toolkit/themes/windows/global/moz.build b/toolkit/themes/windows/global/moz.build new file mode 100644 index 0000000000..d988c0ff9b --- /dev/null +++ b/toolkit/themes/windows/global/moz.build @@ -0,0 +1,7 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# 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/. + +JAR_MANIFESTS += ["jar.mn"] diff --git a/toolkit/themes/windows/global/popup.css b/toolkit/themes/windows/global/popup.css new file mode 100644 index 0000000000..e54ced7e9c --- /dev/null +++ b/toolkit/themes/windows/global/popup.css @@ -0,0 +1,121 @@ +/* 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/. */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +/* ::::: menupopup ::::: */ + +menupopup, +panel { + min-width: 1px; + --panel-background: Menu; + --panel-color: MenuText; + --panel-padding: 0; + --panel-border-radius: 0; + --panel-border-color: ThreeDShadow; + --panel-width: initial; + + --panel-shadow: 0 0 var(--panel-shadow-margin) hsla(0,0%,0%,.2); + --panel-shadow-margin: 4px; + -moz-window-input-region-margin: var(--panel-shadow-margin); + margin: calc(-1 * var(--panel-shadow-margin)); +} + +@media not (-moz-windows-non-native-menus) { + menupopup { + appearance: auto; + -moz-default-appearance: menupopup; + + /* Native menus are always light */ + color-scheme: light !important; + + /* We set the background-color / border here so that it doesn't interfere with native styling. */ + background-color: Menu; + border: 1px solid ThreeDShadow; + --panel-background: transparent; + --panel-border-color: transparent; + --nested-margin: -3px; + --panel-shadow-margin: 0px; + } +} + +@media (-moz-windows-non-native-menus) { + menupopup { + /* Disable the default appearance so we can override the native styling. */ + appearance: none; + + /* Prevent any background or border around the outside of the shadow. */ + background-color: transparent; + border: none; + + --panel-border-radius: 4px; + --panel-padding: 4px 0; + --panel-border-color: ThreeDShadow; + --panel-background: Menu; + --nested-margin: -10px; + } + + menupopup > menuitem, + menupopup > menu { + padding-block: 0.5em; + padding-inline-start: 1em; + } +} + +menupopup > menu > menupopup { + /* align submenus */ + margin-inline-start: var(--nested-margin); + margin-top: var(--nested-margin); +} + +:is(panel, menupopup)[type="arrow"] { + appearance: none; + background: transparent; + border: none; +} + +:is(panel, menupopup)::part(content) { + display: -moz-box; + -moz-box-flex: 1; + padding: var(--panel-padding); + margin: var(--panel-shadow-margin); + box-shadow: var(--panel-shadow); + color: var(--panel-color); + background: var(--panel-background); + border-radius: var(--panel-border-radius); + border: 1px solid var(--panel-border-color); + width: var(--panel-width); + min-width: 0; + min-height: 0; +} + +:is(panel, menupopup)[orient=vertical]::part(content) { + -moz-box-orient: vertical; +} + +panel[type="arrow"].panel-no-padding::part(content) { + padding: 0; + overflow: hidden; /* Don't let panel content overflow the border-radius */ +} + +/* rules for popups associated with menulists */ + +menulist > menupopup { + font: inherit; + appearance: none; + background-color: transparent; + border: none; + min-width: 0; +} + +@media not (-moz-windows-non-native-menus) { + /* For Win10, the popup itself needs to have a transparent background because + otherwise the background color would appear behind the drop shadow. */ + menulist > menupopup { + color: FieldText; + --panel-background: Field; + --panel-border-color: ThreeDShadow; + } +} diff --git a/toolkit/themes/windows/global/printPageSetup.css b/toolkit/themes/windows/global/printPageSetup.css new file mode 100644 index 0000000000..eec8315f8b --- /dev/null +++ b/toolkit/themes/windows/global/printPageSetup.css @@ -0,0 +1,26 @@ +/* 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/. */ + +fieldset { + border: 0.5px groove ThreeDLightShadow; + margin: 6px 3px; +} + +.groupbox-body { + /* We cannot use padding on the groupbox due to its -moz-appearance. */ + margin: 3px 3px 6px; +} + +.portrait-page .radio-icon { + list-style-image: url("chrome://global/skin/icons/Portrait.png"); +} + +.landscape-page .radio-icon { + list-style-image: url("chrome://global/skin/icons/Landscape.png"); +} + +#header-footer-grid { + display: grid; + grid-template-columns: auto auto auto; +} diff --git a/toolkit/themes/windows/global/radio.css b/toolkit/themes/windows/global/radio.css new file mode 100644 index 0000000000..8e8813a5ee --- /dev/null +++ b/toolkit/themes/windows/global/radio.css @@ -0,0 +1,61 @@ +/* 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/. */ + +/* ===== radio.css =================================================== + == Styles used by the XUL radio element. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* ::::: radio ::::: */ + +radio { + appearance: auto; + -moz-default-appearance: radio-container; + -moz-box-align: center; + margin: 2px 4px; + padding-top: 1px; + padding-bottom: 1px; + padding-inline-start: 4px; + padding-inline-end: 2px; +} + +.radio-check { + appearance: auto; + -moz-default-appearance: radio; + margin: 1px 0; +} + +.radio-label-box { + margin-inline-start: 2px; + padding-bottom: 1px; + padding-inline-start: 1px; +} + +.radio-icon[src] { + margin-inline-end: 2px; +} + +.radio-label { + margin: 0; +} + +/* ..... focused state ..... */ + +radiogroup:focus-visible > radio[focused="true"] > .radio-label-box { + outline: var(--focus-outline); +} + +/* ..... disabled state ..... */ + +radio[disabled="true"] { + color: GrayText; +} + +@media (-moz-windows-classic) { + radio[disabled="true"] { + color: ThreeDShadow; + text-shadow: 1px 1px ThreeDHighlight; + } +} diff --git a/toolkit/themes/windows/global/richlistbox.css b/toolkit/themes/windows/global/richlistbox.css new file mode 100644 index 0000000000..7aff813299 --- /dev/null +++ b/toolkit/themes/windows/global/richlistbox.css @@ -0,0 +1,152 @@ +/* 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/. */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +richlistbox { + margin: 2px 4px; + background-color: Field; + color: FieldText; + border: 1px solid ThreeDShadow; +} + +richlistbox[disabled="true"] { + color: GrayText; +} + +richlistitem[selected="true"] { + background-color: -moz-cellhighlight; + color: -moz-cellhighlighttext; +} + +richlistbox:where(:focus) > richlistitem[selected="true"] { + background-color: SelectedItem; + color: SelectedItemText; +} + +richlistbox[seltype="multiple"]:focus > richlistitem[current="true"], +richlistbox.theme-listbox:focus > richlistitem[current="true"] { + outline: var(--default-focusring); + outline-color: SelectedItem; + outline-offset: calc(-1 * var(--default-focusring-width)); +} + +richlistbox[seltype="multiple"]:focus > richlistitem[current="true"][selected="true"], +richlistbox.theme-listbox:focus > richlistitem[current="true"][selected="true"] { + outline-color: #F3D982; /* TODO: find a suitable system color */ +} + +richlistbox.theme-listbox > richlistitem { + border: 1px solid transparent; +} + +richlistbox.theme-listbox > richlistitem[selected="true"] { + background-color: -moz-cellhighlight; + color: -moz-cellhighlighttext; +} + +richlistbox.theme-listbox:focus > richlistitem[selected="true"] { + background-color: SelectedItem; + color: SelectedItemText; +} + +richlistbox.theme-listbox > richlistitem > label { + margin: 0; + padding-block: 0 1px; + padding-inline: 4px 0; + white-space: nowrap; +} + +@media (-moz-windows-default-theme) { + richlistbox.theme-listbox > richlistitem { + --listitem-selectedTextColor: rgb(0,0,0); + --listitem-selectedColor: rgb(217,217,217); + --listitem-selectedBorder: var(--listitem-selectedColor); + --listitem-selectedBottomBorder: rgb(204,204,204); + --listitem-selectedBackground: var(--listitem-selectedColor); + --listitem-selectedImage: none; + --listitem-selectedCurrentBorder: rgb(123,195,255); + --listitem-selectedFocusColor: rgb(205,232,255); + --listitem-selectedFocusBorder: var(--listitem-selectedFocusColor); + --listitem-selectedFocusBottomBorder: rgb(165,214,255); + --listitem-selectedFocusBackground: var(--listitem-selectedFocusColor); + --listitem-selectedFocusImage: none; + --listitem-selectedFocusCurrentBorder: var(--listitem-selectedFocusColor); + --listitem-selectedFocusCurrentBottomBorder: var(--listitem-selectedFocusBottomBorder); + --listitem-selectedFocusCurrentBackground: var(--listitem-selectedFocusColor); + + color: FieldText; + margin-inline: 1px; + padding-block: 1px; + border-width: 1px; + background-repeat: no-repeat; + background-size: 100% 100%; + } + + richlistbox.theme-listbox > richlistitem[selected="true"] { + border-top-color: var(--listitem-selectedBorder); + border-inline-color: var(--listitem-selectedBorder); + border-bottom-color: var(--listitem-selectedBottomBorder); + background-image: var(--listitem-selectedImage); + background-color: var(--listitem-selectedBackground); + color: var(--listitem-selectedTextColor); + } + + richlistbox.theme-listbox:focus > richlistitem[selected="true"] { + border-top-color: var(--listitem-selectedFocusBorder); + border-inline-color: var(--listitem-selectedFocusBorder); + border-bottom-color: var(--listitem-selectedFocusBottomBorder); + background-image: var(--listitem-selectedFocusImage); + background-color: var(--listitem-selectedFocusBackground); + color: var(--listitem-selectedTextColor); + } + + richlistbox.theme-listbox:focus > richlistitem[current="true"] { + border-color: var(--listitem-selectedCurrentBorder); + outline: none; + } + + richlistbox.theme-listbox:focus > richlistitem[selected="true"][current="true"] { + border-top-color: var(--listitem-selectedFocusCurrentBorder); + border-inline-color: var(--listitem-selectedFocusCurrentBorder); + border-bottom-color: var(--listitem-selectedFocusCurrentBottomBorder); + background-color: var(--listitem-selectedFocusCurrentBackground); + outline: none; + } + + @media (-moz-platform: windows-win7) { + richlistbox.theme-listbox > richlistitem { + --listitem-selectedBottomBorder: var(--listitem-selectedColor); + --listitem-selectedBackground: rgba(190,190,190,.15); + --listitem-selectedImage: linear-gradient(rgba(190,190,190,.1), rgba(190,190,190,.4)); + --listitem-selectedCurrentBorder: rgb(125,162,206); + --listitem-selectedFocusColor: rgb(132,172,221); + --listitem-selectedFocusBottomBorder: var(--listitem-selectedFocusColor); + --listitem-selectedFocusBackground: rgba(131,183,249,.02); + --listitem-selectedFocusImage: linear-gradient(rgba(131,183,249,.16), rgba(131,183,249,.375)); + --listitem-selectedFocusCurrentBackground: rgba(131,183,249,.15); + + border-radius: 3px; + box-shadow: inset 0 0 0 1px rgba(255,255,255,.4), inset 0 -1px 0 1px rgba(255,255,255,.2); + } + } + + @media (-moz-platform: windows-win8) { + richlistbox.theme-listbox > richlistitem { + --listitem-selectedBottomBorder: var(--listitem-selectedColor); + --listitem-selectedBackground: rgba(190,190,190,.15); + --listitem-selectedImage: linear-gradient(rgba(190,190,190,.4), rgba(190,190,190,.4)); + --listitem-selectedCurrentBorder: rgb(125,162,206); + --listitem-selectedFocusColor: rgb(132,172,221); + --listitem-selectedFocusBottomBorder: var(--listitem-selectedFocusColor); + --listitem-selectedFocusBackground: rgba(131,183,249,.02); + --listitem-selectedFocusImage: linear-gradient(rgba(131,183,249,.375), rgba(131,183,249,.375)); + --listitem-selectedFocusCurrentBackground: rgba(131,183,249,.15); + } + } +} + +listheader { + color: -moz-DialogText; +} diff --git a/toolkit/themes/windows/global/search-textbox.css b/toolkit/themes/windows/global/search-textbox.css new file mode 100644 index 0000000000..b333a5f1a1 --- /dev/null +++ b/toolkit/themes/windows/global/search-textbox.css @@ -0,0 +1,81 @@ +/* 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/. */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +/* ::::: search textbox ::::: */ + +:host { + appearance: auto; + -moz-default-appearance: textfield; + cursor: text; + margin: 2px 4px; /* matches global.css margin */ + padding: 2px 2px 3px; + padding-inline-start: 4px; + background-color: Field; + color: FieldText; +} + +html|input { + border: none; + padding: 0 1px; + background-color: transparent; + outline: none; + color: inherit; + font: inherit; + text-shadow: inherit; + box-sizing: border-box; + -moz-box-flex: 1; + min-width: 0; + text-align: inherit; +} + +/* ..... readonly state ..... */ + +:host([readonly="true"]) { + background-color: -moz-Dialog; + color: -moz-DialogText; +} + +/* ..... disabled state ..... */ + +:host([disabled="true"]) { + cursor: default; + background-color: -moz-Dialog; + color: GrayText; +} + +/* ::::: icons ::::: */ + +:host(:not([searchbutton])) > .textbox-search-sign { + list-style-image: url(chrome://global/skin/icons/search-textbox.svg); + margin-inline-end: 5px; +} + +:host([searchbutton]) .textbox-search-icon { + list-style-image: url(chrome://global/skin/icons/search-textbox.svg); +} + +.textbox-search-sign:-moz-locale-dir(rtl), +.textbox-search-icon:-moz-locale-dir(rtl) { + transform: scaleX(-1); +} + +:host([searchbutton]) .textbox-search-icon:not([disabled]) { + cursor: pointer; +} + +.textbox-search-clear { + list-style-image: url(resource://content-accessible/searchfield-cancel.svg); +} + +.textbox-search-clear:not([disabled]) { + cursor: default; +} + +/* Don't leave extra blank space with long placeholders (see bug 1385902) */ +:host(:not([searchbutton])) > .textbox-search-icons:not([selectedIndex="1"]) { + display: none; +} diff --git a/toolkit/themes/windows/global/splitter.css b/toolkit/themes/windows/global/splitter.css new file mode 100644 index 0000000000..15e7e9241d --- /dev/null +++ b/toolkit/themes/windows/global/splitter.css @@ -0,0 +1,61 @@ +/* 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/. */ + +/* ===== splitter.css =================================================== + == Styles used by the XUL splitter element. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* ::::: splitter (vertical) ::::: */ + +splitter { + -moz-box-align: center; + -moz-box-pack: center; + cursor: ew-resize; + border-width: 0 1px; + border-style: solid; + border-inline-start-color: ThreeDHighlight; + border-inline-end-color: ThreeDShadow; + min-width: 6px; + background-color: ThreeDFace; +} + +splitter[state="collapsed"][collapse="before"], +splitter[state="collapsed"][substate="before"], +splitter[state="collapsed"][collapse="after"]:-moz-locale-dir(rtl), +splitter[state="collapsed"][substate="after"]:-moz-locale-dir(rtl) { + cursor: e-resize; +} + +splitter[state="collapsed"][collapse="after"], +splitter[state="collapsed"][substate="after"], +splitter[state="collapsed"][collapse="before"]:-moz-locale-dir(rtl), +splitter[state="collapsed"][substate="before"]:-moz-locale-dir(rtl) { + cursor: w-resize; +} + +/* ::::: splitter (horizontal) ::::: */ + +splitter[orient="vertical"] { + cursor: ns-resize; + border-width: 1px 0; + border-top-color: ThreeDHighlight; + border-bottom-color: ThreeDShadow; + min-height: 6px; +} + +splitter[orient="vertical"][state="collapsed"][collapse="before"], +splitter[orient="vertical"][state="collapsed"][substate="before"] { + cursor: s-resize; +} + +splitter[orient="vertical"][state="collapsed"][collapse="after"], +splitter[orient="vertical"][state="collapsed"][substate="after"] { + cursor: n-resize; +} + +splitter[disabled="true"] { + cursor: default !important; +} diff --git a/toolkit/themes/windows/global/tabbox.css b/toolkit/themes/windows/global/tabbox.css new file mode 100644 index 0000000000..41fa020674 --- /dev/null +++ b/toolkit/themes/windows/global/tabbox.css @@ -0,0 +1,51 @@ +/* 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/. */ + +/* ===== tabbox.css ================================================= + == Styles used by XUL tab-related elements. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +/* ::::: tabpanels ::::: */ + +tabpanels { + appearance: auto; + -moz-default-appearance: tabpanels; + padding: 8px; + color: -moz-DialogText; + /* These don't have non-native theme support, so force them to light mode to + * use the native windows theme. */ + color-scheme: light; +} + +/* ::::: tab ::::: */ + +tab { + appearance: auto; + -moz-default-appearance: tab; + margin-top: 2px; + padding: 1px 4px 2px; + color: -moz-DialogText; + /* These don't have non-native theme support, so force them to light mode to + * use the native windows theme. */ + color-scheme: light; +} + +tab:where([visuallyselected="true"]) { + margin-top: 0; + padding: 1px 6px 4px; +} + +tab:where(:first-of-type[visuallyselected="true"]) { + padding-inline: 5px; +} + +.tab-text { + margin: 0 !important; +} + +tab:-moz-focusring > .tab-middle { + outline: var(--default-focusring); +} diff --git a/toolkit/themes/windows/global/tabprompts.css b/toolkit/themes/windows/global/tabprompts.css new file mode 100644 index 0000000000..2b5fbdf55f --- /dev/null +++ b/toolkit/themes/windows/global/tabprompts.css @@ -0,0 +1,25 @@ +/* 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/. */ + +/* Tab Modal Prompt boxes */ +.tabModalBackground, +tabmodalprompt { + background-color: hsla(0,0%,10%,.5); +} + +tabmodalprompt { + font-family: sans-serif; /* use content font not system UI font */ +} + +.tabmodalprompt-mainContainer { + color: FieldText; + background-color: Field; + border-radius: 2px; + border: 1px solid threeDDarkShadow; +} + +.tabmodalprompt-buttonContainer { + background-color: hsla(0,0%,0%,.05); + border-top: 1px solid hsla(0,0%,0%,.05); +} diff --git a/toolkit/themes/windows/global/toolbar.css b/toolkit/themes/windows/global/toolbar.css new file mode 100644 index 0000000000..45b79eafdd --- /dev/null +++ b/toolkit/themes/windows/global/toolbar.css @@ -0,0 +1,58 @@ +/* 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/. */ + +/* ===== toolbar.css ==================================================== + == Styles used by XUL toolbar-related elements. + ======================================================================= */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); + +toolbox { + appearance: auto; + -moz-default-appearance: toolbox; +} + +toolbar { + appearance: auto; + -moz-default-appearance: toolbar; + min-width: 1px; + min-height: 19px; +} + +toolbar:first-child { + min-width: 1px; +} + +toolbox:-moz-lwtheme, +toolbar:-moz-lwtheme { + appearance: none; +} + +toolbarseparator { + appearance: auto; + -moz-default-appearance: separator; +} + +toolbarspacer { + width: 15px; +} + +toolbarpaletteitem { + cursor: grab; +} + +/* Drag and drop feedback */ + +toolbarpaletteitem[place="toolbar"] { + margin-inline: -2px; + border-inline: 2px solid transparent; +} + +toolbarpaletteitem[dragover="left"] { + border-left-color: #000000; +} + +toolbarpaletteitem[dragover="right"] { + border-right-color: #000000; +} diff --git a/toolkit/themes/windows/global/toolbarbutton.css b/toolkit/themes/windows/global/toolbarbutton.css new file mode 100644 index 0000000000..33ed1acf25 --- /dev/null +++ b/toolkit/themes/windows/global/toolbarbutton.css @@ -0,0 +1,98 @@ +/* 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/. */ + +/* ===== toolbarbutton.css ===================================================== + == Styles used by the XUL button element. + ======================================================================= */ + +/* ::::: toolbarbutton ::::: */ + +toolbarbutton { + appearance: auto; + -moz-default-appearance: toolbarbutton; + margin: 0; + padding: 3px; +} + +.toolbarbutton-text { + margin: 0; +} + +toolbarbutton:-moz-focusring { + outline: var(--default-focusring); + outline-offset: calc(-1 * var(--default-focusring-width) - 1px); +} + +toolbarbutton:where([disabled="true"]) { + color: GrayText; + text-shadow: none; +} + +@media (-moz-windows-classic) { + @media not (prefers-contrast) { + toolbarbutton:where([disabled="true"]) { + text-shadow: 1px 1px ThreeDHighlight; + } + } + toolbarbutton:where([disabled="true"]) { + color: ThreeDShadow; + } +} + +@media (-moz-windows-default-theme) { + :root[lwtheme-image] toolbarbutton { + text-shadow: none; + } + + :root[lwtheme-image] toolbarbutton:not([disabled="true"]) { + text-shadow: inherit; + } +} + +@media (-moz-windows-default-theme: 0) { + :root[lwtheme-image] toolbarbutton:not([disabled="true"]) { + text-shadow: inherit; + } +} + +/* ::::: toolbarbutton menu ::::: */ + +.toolbarbutton-menu-dropmarker, +.toolbarbutton-combined-buttons-dropmarker { + appearance: none; + list-style-image: url("chrome://global/skin/icons/arrow-down-12.svg"); + -moz-context-properties: fill; + fill: currentColor; + width: auto; +} + +/* ::::: toolbarbutton badged ::::: */ + +.toolbarbutton-badge-stack > .toolbarbutton-icon[label]:not([label=""]) { + margin-inline-end: 0; +} + +.toolbarbutton-badge { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; + background-color: #d90000; + font-size: 10px; + font-weight: bold; + padding: 0 2px 1px; + color: #fff; + text-shadow: none; + border-radius: 2px; + box-shadow: 0 1px 0 hsla(0, 100%, 100%, .2) inset, + 0 -1px 0 hsla(0, 0%, 0%, .1) inset, + 0 1px 0 hsla(206, 50%, 10%, .2); + margin: -5px 0 0 !important; + margin-inline-end: -4px !important; + min-width: 14px; + max-width: 20px; + line-height: 10px; + text-align: center; + align-self: start; + justify-self: end; +} diff --git a/toolkit/themes/windows/global/tree/sort-asc.svg b/toolkit/themes/windows/global/tree/sort-asc.svg new file mode 100644 index 0000000000..917fa96cf3 --- /dev/null +++ b/toolkit/themes/windows/global/tree/sort-asc.svg @@ -0,0 +1,6 @@ + + + + diff --git a/toolkit/themes/windows/global/tree/sort-dsc.svg b/toolkit/themes/windows/global/tree/sort-dsc.svg new file mode 100644 index 0000000000..97cbfc6917 --- /dev/null +++ b/toolkit/themes/windows/global/tree/sort-dsc.svg @@ -0,0 +1,6 @@ + + + + diff --git a/toolkit/themes/windows/global/wizard.css b/toolkit/themes/windows/global/wizard.css new file mode 100644 index 0000000000..5a097980dc --- /dev/null +++ b/toolkit/themes/windows/global/wizard.css @@ -0,0 +1,53 @@ +/* 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/. */ + +@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); +@namespace html url("http://www.w3.org/1999/xhtml"); + +.wizard-header { + border-bottom: 2px groove ThreeDFace; + background-color: Window; + color: WindowText; +} + +.wizard-header-box-1 { + padding: 5px 0; +} + +.wizard-header-label { + margin-inline-start: 23px; + font-weight: bold; +} + +.wizard-header-description { + margin-inline-start: 44px; +} + +:host([data-branded="true"]) .wizard-header-icon { + list-style-image: url("chrome://branding/content/icon128.png"); + width: 48px; + height: 48px; + margin-inline-end: 5px; +} + +html|*.wizard-page-box { + margin: 10px 44px; +} + +.wizard-buttons-separator { + margin-bottom: 0 !important; +} + +.wizard-buttons-box-2 { + margin: 10px; +} + +.wizard-button[dlgtype="finish"], +.wizard-button[dlgtype="next"] { + margin-inline-start: 0 !important; +} + +.wizard-button[dlgtype="back"] { + margin-inline-end: 0 !important; +} diff --git a/toolkit/themes/windows/moz.build b/toolkit/themes/windows/moz.build new file mode 100644 index 0000000000..096017b685 --- /dev/null +++ b/toolkit/themes/windows/moz.build @@ -0,0 +1,7 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# 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/. + +DIRS += ["global", "mozapps"] diff --git a/toolkit/themes/windows/mozapps/downloads/unknownContentType.css b/toolkit/themes/windows/mozapps/downloads/unknownContentType.css new file mode 100644 index 0000000000..c372bd1742 --- /dev/null +++ b/toolkit/themes/windows/mozapps/downloads/unknownContentType.css @@ -0,0 +1,40 @@ +/* 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 { -moz-box-layout: flex; } + +#type { + -moz-box-flex: 1; + background-color: transparent; + color: inherit; +} + +#from { + margin-top: 1px; +} + +#location { + font-weight: bold; +} + +#contentTypeImage { + height: 16px; + width: 16px; + margin-block: 0; + margin-inline-start: 0; + margin-inline-end: 5px; +} + +.small-indent { + margin-inline: 15px; +} + +.small-indent label { + margin-inline-start: 0; +} + +#source, +#location { + contain: inline-size; +} diff --git a/toolkit/themes/windows/mozapps/handling/handling.css b/toolkit/themes/windows/mozapps/handling/handling.css new file mode 100644 index 0000000000..bea9212b1b --- /dev/null +++ b/toolkit/themes/windows/mozapps/handling/handling.css @@ -0,0 +1,31 @@ +/* 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/. */ + +richlistitem[type] { + min-height: 36px; /* Don't forget to update the richlistbox height! */ + padding-inline-start: 2px; + } + +richlistitem { + -moz-box-align: center; +} + +richlistbox { + /* 3 items high, plus 4px for top and bottom margins, less 2px for border */ + min-height: 110px; +} + +.name { + font-weight: bold; +} + +.description { + color: GrayText; +} + +@media (prefers-contrast) { + richlistitem[selected] .description { + color: inherit; + } +} diff --git a/toolkit/themes/windows/mozapps/jar.mn b/toolkit/themes/windows/mozapps/jar.mn new file mode 100644 index 0000000000..2f031eb5be --- /dev/null +++ b/toolkit/themes/windows/mozapps/jar.mn @@ -0,0 +1,7 @@ +# 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/. + +toolkit.jar: +#include ../../shared/mozapps.inc.mn + skin/classic/mozapps/update/updates.css (update/updates.css) diff --git a/toolkit/themes/windows/mozapps/moz.build b/toolkit/themes/windows/mozapps/moz.build new file mode 100644 index 0000000000..d988c0ff9b --- /dev/null +++ b/toolkit/themes/windows/mozapps/moz.build @@ -0,0 +1,7 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# 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/. + +JAR_MANIFESTS += ["jar.mn"] diff --git a/toolkit/themes/windows/mozapps/update/updates.css b/toolkit/themes/windows/mozapps/update/updates.css new file mode 100644 index 0000000000..ab95e5329e --- /dev/null +++ b/toolkit/themes/windows/mozapps/update/updates.css @@ -0,0 +1,89 @@ +/* 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/. */ + +/* Elevation Dialog */ +/* Specify the size for the UI so it has a fixed size. 3rd + party themes should typically specify the same values. */ +#elevationBox, .update-content { + height: 360px; + width: 700px; +} + +/* Remove margin and padding so the inner UI will extend to the edge of the + window. 3rd party themes should typically specify the same values. */ +#updates { + margin: 0; + padding: 0; +} + +.update-header { + border-bottom: 2px groove ThreeDFace; + background-color: Window; + color: WindowText; + padding: 0 10px; +} + +.update-header-box-1 { + padding: 5px 0; +} + +.update-header-label { + font-weight: bold; +} + +#update-button-box { + margin: 0; + padding: 5px 10px 10px; +} + +.update-content { + padding: 10px; +} + +.update-buttons-separator { + margin-block: 0 !important; +} + +#updateFinishedName { + font-weight: bold; + font-size: larger; +} + +/* Update History Window */ +update { + border-bottom: 1px dotted #C0C0C0; +} + +.update-name { + font-weight: bold; +} + +.update-label-column { + -moz-box-align: end; +} + +.update-type { + font-weight: bold; + color: #990000; +} + +.update-status-value, +.update-installedOn-value { + margin-inline-start: 1ch; +} + +#historyItems { + height: 200px; + margin: 1px 5px; +} + +#historyItems .update { + padding: 5px; + display: -moz-box; + -moz-box-orient: vertical; +} + +.update-name { + -moz-box-flex: 1; +} diff --git a/toolkit/themes/windows/mozapps/viewsource/viewsource.css b/toolkit/themes/windows/mozapps/viewsource/viewsource.css new file mode 100644 index 0000000000..76c7d00b9d --- /dev/null +++ b/toolkit/themes/windows/mozapps/viewsource/viewsource.css @@ -0,0 +1,5 @@ +/* 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/. */ + +/* This is for styling the menus of the viewsource window */ -- cgit v1.2.3