From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- .../customizableui/customize-illustration-rtl.png | Bin 0 -> 7592 bytes .../customize-illustration-rtl@2x.png | Bin 0 -> 16521 bytes .../customizableui/customize-illustration.png | Bin 0 -> 7609 bytes .../customizableui/customize-illustration@2x.png | Bin 0 -> 16465 bytes .../shared/customizableui/customizeFavicon.ico | Bin 0 -> 1084 bytes .../shared/customizableui/customizeMode.inc.css | 461 +++++ .../shared/customizableui/customizeTip.inc.css | 77 + .../customizableui/info-icon-customizeTip.png | Bin 0 -> 286 bytes .../customizableui/info-icon-customizeTip@2x.png | Bin 0 -> 501 bytes .../customizableui/menuPanel-customizeFinish.png | Bin 0 -> 337 bytes .../menuPanel-customizeFinish@2x.png | Bin 0 -> 625 bytes .../themes/shared/customizableui/panelUI.inc.css | 1769 ++++++++++++++++++++ .../customizableui/panelarrow-customizeTip.png | Bin 0 -> 243 bytes .../customizableui/panelarrow-customizeTip@2x.png | Bin 0 -> 260 bytes .../subView-arrow-back-inverted-rtl.png | Bin 0 -> 190 bytes .../subView-arrow-back-inverted-rtl@2x.png | Bin 0 -> 465 bytes .../customizableui/subView-arrow-back-inverted.png | Bin 0 -> 307 bytes .../subView-arrow-back-inverted@2x.png | Bin 0 -> 667 bytes browser/themes/shared/customizableui/whimsy.png | Bin 0 -> 6639 bytes browser/themes/shared/customizableui/whimsy@2x.png | Bin 0 -> 18370 bytes 20 files changed, 2307 insertions(+) create mode 100644 browser/themes/shared/customizableui/customize-illustration-rtl.png create mode 100644 browser/themes/shared/customizableui/customize-illustration-rtl@2x.png create mode 100644 browser/themes/shared/customizableui/customize-illustration.png create mode 100644 browser/themes/shared/customizableui/customize-illustration@2x.png create mode 100644 browser/themes/shared/customizableui/customizeFavicon.ico create mode 100644 browser/themes/shared/customizableui/customizeMode.inc.css create mode 100644 browser/themes/shared/customizableui/customizeTip.inc.css create mode 100644 browser/themes/shared/customizableui/info-icon-customizeTip.png create mode 100644 browser/themes/shared/customizableui/info-icon-customizeTip@2x.png create mode 100644 browser/themes/shared/customizableui/menuPanel-customizeFinish.png create mode 100644 browser/themes/shared/customizableui/menuPanel-customizeFinish@2x.png create mode 100644 browser/themes/shared/customizableui/panelUI.inc.css create mode 100644 browser/themes/shared/customizableui/panelarrow-customizeTip.png create mode 100644 browser/themes/shared/customizableui/panelarrow-customizeTip@2x.png create mode 100644 browser/themes/shared/customizableui/subView-arrow-back-inverted-rtl.png create mode 100644 browser/themes/shared/customizableui/subView-arrow-back-inverted-rtl@2x.png create mode 100644 browser/themes/shared/customizableui/subView-arrow-back-inverted.png create mode 100644 browser/themes/shared/customizableui/subView-arrow-back-inverted@2x.png create mode 100644 browser/themes/shared/customizableui/whimsy.png create mode 100644 browser/themes/shared/customizableui/whimsy@2x.png (limited to 'browser/themes/shared/customizableui') diff --git a/browser/themes/shared/customizableui/customize-illustration-rtl.png b/browser/themes/shared/customizableui/customize-illustration-rtl.png new file mode 100644 index 000000000..12005095c Binary files /dev/null and b/browser/themes/shared/customizableui/customize-illustration-rtl.png differ diff --git a/browser/themes/shared/customizableui/customize-illustration-rtl@2x.png b/browser/themes/shared/customizableui/customize-illustration-rtl@2x.png new file mode 100644 index 000000000..c1af12990 Binary files /dev/null and b/browser/themes/shared/customizableui/customize-illustration-rtl@2x.png differ diff --git a/browser/themes/shared/customizableui/customize-illustration.png b/browser/themes/shared/customizableui/customize-illustration.png new file mode 100644 index 000000000..9131951b0 Binary files /dev/null and b/browser/themes/shared/customizableui/customize-illustration.png differ diff --git a/browser/themes/shared/customizableui/customize-illustration@2x.png b/browser/themes/shared/customizableui/customize-illustration@2x.png new file mode 100644 index 000000000..50c0d1949 Binary files /dev/null and b/browser/themes/shared/customizableui/customize-illustration@2x.png differ diff --git a/browser/themes/shared/customizableui/customizeFavicon.ico b/browser/themes/shared/customizableui/customizeFavicon.ico new file mode 100644 index 000000000..c7bd84339 Binary files /dev/null and b/browser/themes/shared/customizableui/customizeFavicon.ico differ diff --git a/browser/themes/shared/customizableui/customizeMode.inc.css b/browser/themes/shared/customizableui/customizeMode.inc.css new file mode 100644 index 000000000..48681d9f3 --- /dev/null +++ b/browser/themes/shared/customizableui/customizeMode.inc.css @@ -0,0 +1,461 @@ +/* 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/. */ + +/* Customization mode */ + +:root { + --drag-drop-transition-duration: .3s; +} + +#main-window:-moz-any([customize-entering],[customize-entered]) #browser-bottombox { + margin-bottom: 2em; +} + +#main-window:-moz-any([customize-entering],[customize-entered]) #content-deck, +#main-window:-moz-any([customize-entering],[customize-entered]) #browser-bottombox, +#main-window:-moz-any([customize-entering],[customize-entered]) #navigator-toolbox { + margin-left: 2em; + margin-right: 2em; +} + +#main-window:-moz-any([customize-entering],[customize-exiting]) #tab-view-deck { + pointer-events: none; +} + +#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar))::before, +#PanelUI-contents > .panel-customization-placeholder { + -moz-outline-radius: 2.5px; + outline: 1px dashed transparent; +} + +#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar))::before { + /* Prevent jumping of tabs when switching a window between inactive and active (bug 853415). */ + -moz-box-ordinal-group: 0; + content: ""; + display: -moz-box; + height: 100%; + left: 0; + outline-offset: -2px; + pointer-events: none; + position: absolute; + top: 0; + width: 100%; +} + +/* Shift the TabsToolbar outline up 2px since the #nav-bar is shifted up by 1px and the + #TabsToolbar::after is a pixel higher to draw the bottom border of the tabstrip so this makes the + offset from the bottom effectively the same as other targets (-2px). */ +#main-window[customize-entered] #TabsToolbar.customization-target::before { + top: -2px; +} + +/* The parents of the outline pseudo-elements need to be positioned so that the outline is positioned relative to it. */ +#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar)):hover, +#main-window[customize-entered] .customization-target[customizing-dragovertarget]:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar)), +#main-window[customize-entered] #nav-bar-customization-target.customization-target { + position: relative; +} + +/* Most target outlines are shown on hover and drag over but the panel menu uses + placeholders instead. */ +#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar)):hover::before, +#main-window[customize-entered] .customization-target[customizing-dragovertarget]:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar))::before, +/* nav-bar and panel outlines are always shown */ +#nav-bar[showoutline=true] > #nav-bar-customization-target.customization-target::before { + outline-color: currentColor; +} + +#nav-bar[showoutline=true] > #nav-bar-customization-target.customization-target::before { + transition: outline-color 250ms linear; +} + +#PanelUI-contents[showoutline=true] > .panel-customization-placeholder { + transition: outline-color 250ms linear; + outline-color: var(--panel-separator-color); +} + +#PanelUI-contents > .panel-customization-placeholder { + cursor: auto; + outline-offset: -5px; +} + +#main-window[customizing] .customization-target:not(#PanelUI-contents) { + min-width: 100px; + padding-left: 10px; + padding-right: 10px; +} + +#customization-container { + background-color: -moz-field; + color: -moz-fieldText; + text-shadow: none; +} + +#customization-palette, +#customization-empty { + padding: 5px 25px 25px; +} + +#customization-header { + font-size: 1.75em; + line-height: 1.75em; + color: GrayText; + font-weight: 200; + margin: 25px 25px 12px; + padding-bottom: 12px; + border-bottom: 1px solid ThreeDLightShadow; +} + +#customization-panel-container { + padding: 15px 25px 25px; + background-image: linear-gradient(to bottom, #3e86ce, #3878ba); +} + +#main-window:-moz-any([customize-entering],[customize-entered]) #browser-bottombox, +#customization-footer { + background-color: -moz-dialog; +} + +#customization-footer { + border-top: 1px solid ThreeDLightShadow; + padding: 10px; +} + +%if defined(XP_MACOSX) || defined(XP_WIN) +%ifdef XP_WIN +@media (-moz-windows-default-theme) { +%endif + +.customizationmode-button { + border: 1px solid rgb(192,192,192); + border-radius: 3px; + margin: 5px; + padding: 2px 10px; + background-color: rgb(251,251,251); + color: rgb(71,71,71); + box-shadow: 0 1px rgba(255, 255, 255, 0.5), + inset 0 1px rgba(255, 255, 255, 0.5); + -moz-appearance: none; +} + +.customizationmode-button > .box-inherit { + border-width: 0; + padding-inline-start: 0; + padding-inline-end: 0; +} + +.customizationmode-button > .button-icon { + margin-inline-start: 0; +} + +.customizationmode-button:not([type=menu]) > .button-text { + margin-inline-end: 0; +} + +.customizationmode-button > .button-menu-dropmarker { + margin-inline-end: 0; + padding-inline-end: 0; +} + +.customizationmode-button:hover:active:not([disabled]), +.customizationmode-button[open], +.customizationmode-button[checked] { + background-color: rgb(218, 218, 218); + border-color: rgb(168, 168, 168); + text-shadow: 0 1px rgb(236, 236, 236); + box-shadow: 0 1px rgba(255, 255, 255, 0.5), + inset 0 1px rgb(196, 196, 196); +} + +.customizationmode-button[disabled="true"] { + opacity: .5; +} + +%ifdef XP_WIN +} /* @media (-moz-windows-default-theme) */ +%endif +%endif /* defined(XP_MACOSX) || defined(XP_WIN) */ + +.customizationmode-button > .box-inherit > .box-inherit > .button-icon, +.customizationmode-button > .button-box > .button-icon { + height: 24px; +} + +%ifdef CAN_DRAW_IN_TITLEBAR +#customization-titlebar-visibility-button > .button-box > .button-text, +%endif +#customization-lwtheme-button > .box-inherit > .box-inherit > .button-text { + /* Sadly, button.css thinks its margins are perfect for everyone. */ + margin-inline-start: 6px !important; +} + +#customization-lwtheme-button > .box-inherit > .box-inherit > .button-icon { + width: 20px; + height: 20px; + border-radius: 2px; + background-image: url("chrome://browser/skin/theme-switcher-icon.png"); + background-size: contain; +} + +%ifdef CAN_DRAW_IN_TITLEBAR +#customization-titlebar-visibility-button { + list-style-image: url("chrome://browser/skin/customizableui/customize-titleBar-toggle.png"); + -moz-image-region: rect(0, 24px, 24px, 0); +} + +#customization-titlebar-visibility-button > .button-box > .button-icon { + vertical-align: middle; +} + +#customization-titlebar-visibility-button[checked] { + -moz-image-region: rect(0, 48px, 24px, 24px); +} + +@media (min-resolution: 1.1dppx) { + #customization-titlebar-visibility-button { + list-style-image: url("chrome://browser/skin/customizableui/customize-titleBar-toggle@2x.png"); + -moz-image-region: rect(0, 48px, 48px, 0); + } + + #customization-titlebar-visibility-button[checked] { + -moz-image-region: rect(0, 96px, 48px, 48px); + } +} +%endif /* CAN_DRAW_IN_TITLEBAR */ + +#main-window[customize-entered] #customization-panel-container { + background-image: url("chrome://browser/skin/customizableui/customizeMode-separatorHorizontal.png"), + url("chrome://browser/skin/customizableui/customizeMode-separatorVertical.png"), + url("chrome://browser/skin/customizableui/customizeMode-gridTexture.png"), + url("chrome://browser/skin/customizableui/background-noise-toolbar.png"), + linear-gradient(to bottom, #3e86ce, #3878ba); + background-position: center top, left center, left top, left top, left top; + background-repeat: no-repeat, no-repeat, repeat, repeat, no-repeat; + background-size: auto 12px, 12px 100%, auto, auto, auto; + background-attachment: scroll, scroll, fixed, fixed, scroll; +} + +toolbarpaletteitem[place="toolbar"] { + transition: border-width 250ms ease-in-out; +} + +toolbarpaletteitem[mousedown] { + cursor: -moz-grabbing; +} + +.panel-customization-placeholder, +toolbarpaletteitem[place="palette"], +toolbarpaletteitem[place="panel"] { + transition: transform var(--drag-drop-transition-duration) ease-in-out; +} + +#customization-palette { + transition: opacity .3s ease-in-out; + opacity: 0; +} + +#customization-palette[showing="true"] { + opacity: 1; +} + +toolbarpaletteitem toolbarbutton[disabled] { + color: inherit !important; +} + +toolbarpaletteitem[notransition].panel-customization-placeholder, +toolbarpaletteitem[notransition][place="toolbar"], +toolbarpaletteitem[notransition][place="palette"], +toolbarpaletteitem[notransition][place="panel"] { + transition: none; +} + +toolbarpaletteitem > toolbarbutton > .toolbarbutton-icon, +toolbarpaletteitem > toolbarbutton > .toolbarbutton-badge-stack > .toolbarbutton-icon, +toolbarpaletteitem > toolbaritem.panel-wide-item, +toolbarpaletteitem > toolbarbutton[type="menu-button"] { + transition: transform var(--drag-drop-transition-duration) cubic-bezier(.6, 2, .75, 1.5) !important; +} + +toolbarpaletteitem[mousedown] > toolbarbutton > .toolbarbutton-icon, +toolbarpaletteitem[mousedown] > toolbarbutton > .toolbarbutton-badge-stack > .toolbarbutton-icon { + transform: scale(1.3); +} + +toolbarpaletteitem[mousedown] > toolbaritem.panel-wide-item, +toolbarpaletteitem[mousedown] > toolbarbutton[type="menu-button"] { + transform: scale(1.1); +} + +/* Override the toolkit styling for items being dragged over. */ +toolbarpaletteitem[place="toolbar"] { + border-left-width: 0; + border-right-width: 0; + margin-right: 0; + margin-left: 0; +} + +#customization-palette:not([hidden]) { + margin-bottom: 25px; +} + +toolbarpaletteitem[place="palette"]:-moz-focusring, +toolbarpaletteitem[place="panel"]:-moz-focusring, +toolbarpaletteitem[place="toolbar"]:-moz-focusring { + outline-width: 0; +} + +toolbarpaletteitem[place="palette"]:not([mousedown="true"]):-moz-focusring, +toolbarpaletteitem[place="panel"]:not([mousedown="true"]):-moz-focusring, +toolbarpaletteitem[place="toolbar"]:not([mousedown="true"]):-moz-focusring { + /* Delay adding the focusring back until after the transform transition completes. */ + transition: outline-width .01s linear var(--drag-drop-transition-duration); + outline: 1px dotted; + -moz-outline-radius: 2.5px; +} + +toolbarpaletteitem[place="toolbar"]:not([mousedown="true"]):-moz-focusring { + outline-offset: -5px; +} + +#wrapper-edit-controls[place="palette"] > #edit-controls > toolbarbutton, +#wrapper-edit-controls[place="palette"] > #edit-controls > separator, +#wrapper-zoom-controls[place="palette"] > #zoom-controls > toolbarbutton, +#wrapper-zoom-controls[place="palette"] > #zoom-controls > separator { + margin-top: 20px; +} + +#wrapper-edit-controls[place="palette"] > #edit-controls > toolbarbutton, +#wrapper-zoom-controls[place="palette"] > #zoom-controls > toolbarbutton { + margin-left: 0; + margin-right: 0; + max-width: 24px; + min-width: 24px; + max-height: 24px; + min-height: 24px; + padding: 4px; +} + +#wrapper-edit-controls[place="palette"] > #edit-controls > toolbarbutton > .toolbarbutton-icon, +#wrapper-zoom-controls[place="palette"] > #zoom-controls > toolbarbutton > .toolbarbutton-icon { + width: 16px; +} + +#wrapper-edit-controls > #edit-controls > toolbarbutton > .toolbarbutton-icon { + opacity: 1; /* To ensure these buttons always look enabled in customize mode */ +} + +#wrapper-zoom-controls[place="palette"] > #zoom-controls > #zoom-reset-button, +#wrapper-zoom-controls[place="palette"] > #zoom-controls > #zoom-reset-button + separator { + display: none; +} + +#wrapper-personal-bookmarks:not([place="toolbar"]) > #personal-bookmarks { + -moz-box-pack: center; + min-height: 48px; +} + +#personal-bookmarks[cui-areatype="toolbar"]:not([overflowedItem=true]) > #bookmarks-toolbar-placeholder > .toolbarbutton-icon { + margin-inline-end: 5px; +} + +#customization-palette > toolbarpaletteitem > label { + text-align: center; + margin-left: 0; + margin-right: 0; +} + +#customization-lwtheme-menu > .panel-arrowcontainer > .panel-arrowcontent { + -moz-box-orient: vertical; + /* Make the panel padding uniform across all platforms due to the + styling of the section headers and footer. */ + padding: 10px; +} + +.customization-lwtheme-menu-theme > .toolbarbutton-icon { + width: 32px; + height: 32px; +} + +.customization-lwtheme-menu-theme { + -moz-appearance: none; + border: 1px solid transparent; + margin: 0 -5px 5px; + padding-top: 0; + padding-inline-end: 5px; + padding-bottom: 0; + padding-inline-start: 0; +} + +.customization-lwtheme-menu-theme[defaulttheme] { + list-style-image: url(chrome://browser/skin/theme-switcher-icon.png); +} + +.customization-lwtheme-menu-theme[active="true"], +.customization-lwtheme-menu-theme:hover { + background-color: var(--arrowpanel-dimmed); + border-color: var(--panel-separator-color); +} + +.customization-lwtheme-menu-theme[active="true"], +.customization-lwtheme-menu-theme:hover:active { + background-color: var(--arrowpanel-dimmed-further); +} + +.customization-lwtheme-menu-theme > .toolbarbutton-icon { + margin: 5px; +} + +.customization-lwtheme-menu-theme > .toolbarbutton-text { + text-align: start; +} + +#customization-lwtheme-menu-header, +#customization-lwtheme-menu-recommended { + padding: 10px; + margin-bottom: 5px; +} + +#customization-lwtheme-menu-header, +#customization-lwtheme-menu-recommended, +#customization-lwtheme-menu-footer { + background-color: var(--arrowpanel-dimmed); + margin-right: -10px; + margin-left: -10px; +} + +#customization-lwtheme-menu-header { + margin-top: -10px; + border-bottom: 1px solid var(--arrowpanel-dimmed); +} + +#customization-lwtheme-menu-recommended { + border-top: 1px solid var(--arrowpanel-dimmed); + border-bottom: 1px solid var(--arrowpanel-dimmed); +} + +#customization-lwtheme-menu-footer { + background: linear-gradient(var(--arrowpanel-dimmed) 60%, transparent) border-box; + border-top: 1px solid var(--arrowpanel-dimmed); + margin-bottom: -10px; +} + +.customization-lwtheme-menu-footeritem { + -moz-appearance: none; + -moz-box-flex: 1; + color: inherit; + border-style: none; + padding: 10px; + margin-left: 0; + margin-right: 0; +} + +.customization-lwtheme-menu-footeritem:hover { + background: linear-gradient(var(--arrowpanel-dimmed) 40%, transparent) padding-box; +} + +.customization-lwtheme-menu-footeritem:first-child { + border-inline-end: 1px solid var(--panel-separator-color); +} + +%include customizeTip.inc.css diff --git a/browser/themes/shared/customizableui/customizeTip.inc.css b/browser/themes/shared/customizableui/customizeTip.inc.css new file mode 100644 index 000000000..26c6ee1ea --- /dev/null +++ b/browser/themes/shared/customizableui/customizeTip.inc.css @@ -0,0 +1,77 @@ +/* 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/. */ + +#customization-tipPanel > .panel-arrowcontainer > .panel-arrowcontent { + padding: 0; + margin: 0; + min-width: 400px; + max-width: 1000px; + min-height: 200px; + border-radius: 3px; + background-image: linear-gradient(90deg, #a0dfff 0%, #ceeeff 100%); + border: 0px solid rgba(0,148,221,.5); + box-shadow: 0 1px 5px 0 rgba(0,0,0,.5), inset 0 1px 1px 0 #fff; + color: rgb(51,51,51); +} + +#customization-tipPanel > .panel-arrowcontainer > .panel-arrowcontent:-moz-locale-dir(rtl) { + background-image: linear-gradient(90deg, #ceeeff 0%, #a0dfff 100%); +} + +.customization-tipPanel-infoBox { + margin: 20px 25px 25px; + width: 25px; + background-image: url(chrome://browser/skin/customizableui/info-icon-customizeTip.png); + background-repeat: no-repeat; +} + +.customization-tipPanel-content { + margin: 25px 0; + font-size: 12px; + line-height: 18px; +} + +.customization-tipPanel-em { + margin: 0; + font-weight: bold; +} + +.customization-tipPanel-contentImage { + margin-top: 25px; + list-style-image: url(chrome://browser/skin/customizableui/customize-illustration.png); + min-width: 300px; + max-width: 300px; + min-height: 190px; + max-height: 190px; + display: -moz-box; +} + +.customization-tipPanel-contentImage:-moz-locale-dir(rtl) { + list-style-image: url(chrome://browser/skin/customizableui/customize-illustration-rtl.png); +} + +.customization-tipPanel-link { + -moz-appearance: none; + background: transparent; + border: none; + box-shadow: none; + color: rgb(25,82,171); + margin: 0; + cursor: pointer; +} + +.customization-tipPanel-link > .button-box > .button-text { + margin: 0 !important; +} + +.customization-tipPanel-closeBox > .close-icon { + -moz-appearance: none; + border: 0; + margin-inline-end: -25px; +} + +#customization-tipPanel > .panel-arrowcontainer > .panel-arrowbox > .panel-arrow[side="left"], +#customization-tipPanel > .panel-arrowcontainer > .panel-arrowbox > .panel-arrow[side="right"] { + list-style-image: url("chrome://browser/skin/customizableui/panelarrow-customizeTip.png"); +} diff --git a/browser/themes/shared/customizableui/info-icon-customizeTip.png b/browser/themes/shared/customizableui/info-icon-customizeTip.png new file mode 100644 index 000000000..0dfbbce5d Binary files /dev/null and b/browser/themes/shared/customizableui/info-icon-customizeTip.png differ diff --git a/browser/themes/shared/customizableui/info-icon-customizeTip@2x.png b/browser/themes/shared/customizableui/info-icon-customizeTip@2x.png new file mode 100644 index 000000000..7a87fac20 Binary files /dev/null and b/browser/themes/shared/customizableui/info-icon-customizeTip@2x.png differ diff --git a/browser/themes/shared/customizableui/menuPanel-customizeFinish.png b/browser/themes/shared/customizableui/menuPanel-customizeFinish.png new file mode 100644 index 000000000..07be6a76a Binary files /dev/null and b/browser/themes/shared/customizableui/menuPanel-customizeFinish.png differ diff --git a/browser/themes/shared/customizableui/menuPanel-customizeFinish@2x.png b/browser/themes/shared/customizableui/menuPanel-customizeFinish@2x.png new file mode 100644 index 000000000..7562e138c Binary files /dev/null and b/browser/themes/shared/customizableui/menuPanel-customizeFinish@2x.png differ diff --git a/browser/themes/shared/customizableui/panelUI.inc.css b/browser/themes/shared/customizableui/panelUI.inc.css new file mode 100644 index 000000000..b46110ab5 --- /dev/null +++ b/browser/themes/shared/customizableui/panelUI.inc.css @@ -0,0 +1,1769 @@ +/* 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/. */ + +%filter substitution + +%define menuPanelWidth 22.35em +%define standaloneSubviewWidth 30em +% XXXgijs This is the ugliest bit of code I think I've ever written for Mozilla. +% Basically, the 0.1px is there to avoid CSS rounding errors causing buttons to wrap. +% For gory details, refer to https://bugzilla.mozilla.org/show_bug.cgi?id=963365#c11 +% There's no calc() here (and therefore lots of calc() where this is used) because +% we don't support nested calc(): https://bugzilla.mozilla.org/show_bug.cgi?id=968761 +%define menuPanelButtonWidth (@menuPanelWidth@ / 3 - 0.1px) +%define buttonStateHover :not(:-moz-any([disabled],[open],:active)):hover +%define menuStateHover :not(:-moz-any([disabled],:active))[_moz-menuactive] +%define buttonStateActive :not([disabled]):-moz-any([open],:hover:active) +%define menuStateActive :not([disabled])[_moz-menuactive]:active +%define menuStateMenuActive :not([disabled])[_moz-menuactive] + +%include ../browser.inc + +:root { + --panel-ui-exit-subview-gutter-width: 38px; +} + +#PanelUI-popup #PanelUI-contents:empty { + height: 128px; +} + +#PanelUI-popup #PanelUI-contents:empty::before { + content: ""; + background-image: url(chrome://browser/skin/customizableui/whimsy.png); + background-size: 64px 64px; + display: block; + width: 64px; + height: 64px; + position: absolute; + transition: transform 1s ease-out; + animation: whimsyMoveX 3.05s linear 0s infinite alternate, + whimsyMoveY 3.4s linear 0s infinite alternate; +} + +#PanelUI-popup #PanelUI-contents:not(:hover):empty::before { + filter: grayscale(100%); +} + +#PanelUI-popup #PanelUI-contents:active:empty::before { + animation: whimsyMoveX 3.05s linear 0s infinite alternate, + whimsyMoveY 3.4s linear 0s infinite alternate, + whimsyRotate 1s linear 0s infinite normal; +} + +#PanelUI-popup #PanelUI-contents:-moz-locale-dir(rtl):empty::before { + animation: whimsyMoveXRTL 3.05s linear 0s infinite alternate, + whimsyMoveY 3.4s linear 0s infinite alternate; +} + +#PanelUI-popup #PanelUI-contents:-moz-locale-dir(rtl):active:empty::before { + animation: whimsyMoveXRTL 3.05s linear 0s infinite alternate, + whimsyMoveY 3.4s linear 0s infinite alternate, + whimsyRotate 1s linear 0s infinite normal; +} + +@media (min-resolution: 2dppx) { + #PanelUI-popup #PanelUI-contents:empty::before { + background-image: url(chrome://browser/skin/customizableui/whimsy@2x.png); + } +} + +@keyframes whimsyMoveX { + /* These values are adjusted for the padding on the panel. */ + from { margin-left: -15px; } to { margin-left: calc(100% - 49px); } +} + +@keyframes whimsyMoveXRTL { + /* These values are adjusted for the padding on the panel. */ + from { margin-right: -15px; } to { margin-right: calc(100% - 49px); } +} + +@keyframes whimsyMoveY { + /* These values are adjusted for the padding and height of the panel. */ + from { margin-top: -.5em; } to { margin-top: calc(64px - .5em); } +} + +@keyframes whimsyRotate { + to { transform: perspective(5000px) rotateY(360deg); } +} + +#PanelUI-button { + margin-inline-start: 2px; + border-inline-start: 1px solid; + border-image: linear-gradient(transparent, rgba(0,0,0,.1) 20%, rgba(0,0,0,.1) 80%, transparent); + border-image-slice: 1; +} + +#nav-bar[brighttext] > #PanelUI-button { + border-image-source: linear-gradient(transparent, rgba(100%,100%,100%,.2) 20%, rgba(100%,100%,100%,.2) 80%, transparent); +} + +#PanelUI-menu-button[badge-status] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + display: -moz-box; + height: 10px; + width: 10px; + background-size: contain; + border: none; +} + +#PanelUI-menu-button[badge-status="download-success"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + display: none; +} + +#PanelUI-menu-button[badge-status="update-succeeded"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + background: #74BF43 url(chrome://browser/skin/update-badge.svg) no-repeat center; + height: 13px; +} + +#PanelUI-menu-button[badge-status="update-failed"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + background: #D90000 url(chrome://browser/skin/update-badge-failed.svg) no-repeat center; + height: 13px; +} + +#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge, +#PanelUI-menu-button[badge-status="fxa-needs-authentication"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + box-shadow: none; + filter: drop-shadow(0 1px 0 hsla(206, 50%, 10%, .15)); +} + +#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge, +#PanelUI-menu-button[badge-status="download-severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + width: 7px; + height: 7px; + min-width: 0; + border-radius: 50%; + /* "!important" is necessary to override the rule in toolbarbutton.css */ + margin-top: -1px !important; + margin-right: -2px !important; +} + +#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + background: #FFBF00; +} + +#PanelUI-menu-button[badge-status="download-severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + background: #D90000; +} + +#PanelUI-menu-button[badge-status="fxa-needs-authentication"] > .toolbarbutton-badge-stack > .toolbarbutton-badge { + height: 13px; + background: transparent url(chrome://browser/skin/warning.svg) no-repeat center; +} + +#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge:-moz-window-inactive, +#PanelUI-menu-button[badge-status="fxa-needs-authentication"] > .toolbarbutton-badge-stack > .toolbarbutton-badge:-moz-window-inactive { + filter: none; +} + +.panel-subviews { + padding: 4px; + background-clip: padding-box; + border-left: 1px solid var(--arrowpanel-border-color); + box-shadow: 0 3px 5px hsla(210,4%,10%,.1), + 0 0 7px hsla(210,4%,10%,.1); + margin-inline-start: var(--panel-ui-exit-subview-gutter-width); +} + +.panel-viewstack[viewtype="main"] > .panel-subviews { + transform: translateX(@menuPanelWidth@); +} + +.panel-viewstack[viewtype="main"] > .panel-subviews:-moz-locale-dir(rtl) { + transform: translateX(-@menuPanelWidth@); +} + +panelmultiview[nosubviews=true] > .panel-viewcontainer > .panel-viewstack > .panel-subviews { + display: none; +} + +.panel-viewstack:not([viewtype="main"]) > .panel-mainview > #PanelUI-mainView { + -moz-box-flex: 1; +} + +.panel-subview-body { + overflow-y: auto; + overflow-x: hidden; + -moz-box-flex: 1; +} + +#PanelUI-popup .panel-subview-body { + margin: -4px; + padding: 4px 4px; +} + +.panel-subview-header, +.subviewbutton.panel-subview-footer { + box-sizing: border-box; + min-height: 41px; + padding: 11px 12px; +} + +.panel-subview-header { + margin: -4px -4px 4px; + border-bottom: 1px solid var(--panel-separator-color); + color: GrayText; + font-variant: small-caps; +} + +.cui-widget-panelview .panel-subview-header { + display: none; +} + +.cui-widget-panelview .subviewbutton.panel-subview-footer { + margin: 4px 0 0; + -moz-box-pack: center; +} + +#PanelUI-mainView { + display: flex; + flex-direction: column; +} + +#PanelUI-popup > arrowscrollbox > autorepeatbutton { + display: none; +} +#PanelUI-popup > arrowscrollbox > scrollbox { + overflow: visible; +} + +#PanelUI-popup > .panel-arrowcontainer > .panel-arrowcontent { + overflow: hidden; +} + +#PanelUI-popup > .panel-arrowcontainer > .panel-arrowcontent, +.cui-widget-panel > .panel-arrowcontainer > .panel-arrowcontent > .popup-internal-box { + padding: 0; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text, +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-multiline-text { + line-height: 1.2; + max-height: 2.4em; +} + +.panelUI-grid .toolbarbutton-1:not([auto-hyphens="off"]) > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text, +.panelUI-grid .toolbarbutton-1:not([auto-hyphens="off"]) > .toolbarbutton-multiline-text { + -moz-hyphens: auto; +} + +.panelUI-grid:not([customize-transitioning]) .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text, +.panelUI-grid:not([customize-transitioning]) .toolbarbutton-1 > .toolbarbutton-multiline-text { + position: absolute; + clip: rect(-0.1em, auto, 2.6em, auto); +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-text, +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-multiline-text { + text-align: center; + /* Need to override toolkit theming which sets margin: 0 !important; */ + margin: 2px 0 0 !important; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text { + text-align: center; + margin: -1px 0 0; +} + +#wrapper-edit-controls:-moz-any([place="palette"],[place="panel"]) > #edit-controls, +#wrapper-zoom-controls:-moz-any([place="palette"],[place="panel"]) > #zoom-controls { + margin-inline-start: 0; +} + +#PanelUI-contents { + max-width: @menuPanelWidth@; +} + +#BMB_bookmarksPopup, +.panel-mainview:not([panelid="PanelUI-popup"]) { + max-width: @standaloneSubviewWidth@; +} + +/* Give WebExtension stand-alone panels extra width for Chrome compatibility */ +.cui-widget-panel[viewId^=PanelUI-webext-] .panel-mainview { + max-width: 800px; +} + +.cui-widget-panel[viewId^=PanelUI-webext-] > .panel-arrowcontainer > .panel-arrowcontent { + padding: 0; +} + +panelview[id^=PanelUI-webext-] { + overflow: hidden; +} + +panelview:not([mainview]) .toolbarbutton-text, +.cui-widget-panel toolbarbutton > .toolbarbutton-text { + text-align: start; + display: -moz-box; +} + +.cui-widget-panel > .panel-arrowcontainer > .panel-arrowcontent { + padding: 4px 0; +} + +.cui-widget-panel.cui-widget-panelWithFooter > .panel-arrowcontainer > .panel-arrowcontent { + padding-bottom: 0; +} + +#PanelUI-contents { + display: block; + flex: 1 0 auto; + margin-left: auto; + margin-right: auto; + padding: .5em 0; + max-width: @menuPanelWidth@; +} + +#PanelUI-contents-scroller { + overflow-y: auto; + overflow-x: hidden; + width: @menuPanelWidth@; + padding-left: 5px; + padding-right: 5px; + flex: auto; +} + +.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton > .toolbarbutton-icon { + min-width: 0; + min-height: 0; + margin: 0; +} + +toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item), +.panelUI-grid .toolbarbutton-1, +.panel-customization-placeholder-child { + -moz-appearance: none; + -moz-box-orient: vertical; + width: calc(@menuPanelButtonWidth@); + height: calc(51px + 2.2em); +} + +/* In order to have button labels constrained appropriately, items inside the toolbarpaletteitem + * should have a min-width set so they abide by the width set above (which they do outside of + * customize mode because they're in a flexed container) */ +toolbarpaletteitem[place="panel"]:not([haswideitem=true]) > .toolbarbutton-1 { + min-width: 0.01px; +} + +/* Help SDK buttons fit in. */ +toolbarpaletteitem[place="palette"] > toolbarbutton[constrain-size="true"] > .toolbarbutton-icon, +toolbarpaletteitem[place="palette"] > toolbarbutton[constrain-size="true"] > .toolbarbutton-badge-stack > .toolbarbutton-icon, +toolbarbutton[constrain-size="true"][cui-areatype="menu-panel"] > .toolbarbutton-icon, +toolbarbutton[constrain-size="true"][cui-areatype="menu-panel"] > .toolbarbutton-badge-stack > .toolbarbutton-icon { + height: 32px; + width: 32px; +} + +toolbarpaletteitem:-moz-any([place="palette"], [place="panel"]) > toolbaritem[sdkstylewidget="true"] > .toolbarbutton-1 > .toolbarbutton-icon { + width: 32px; + height: 32px; +} + +.customization-palette .toolbarbutton-1 { + -moz-appearance: none; + -moz-box-orient: vertical; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button { + -moz-appearance: none; + -moz-box-orient: vertical; + width: calc(@menuPanelButtonWidth@ - 2px); + height: calc(49px + 2.2em); + border: 0; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-text, +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text { + margin-top: 2px; /* Hack needed to get the label of type=menu-button aligned with other buttons */ +} + +.panel-customization-placeholder-child { + margin: 6px 0 0; + padding: 2px 6px; + border: 1px solid transparent; +} + +.panelUI-grid .toolbarbutton-1[type="menu"] { + background-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow.png"); + background-position: right 3px top 16px; + background-repeat: no-repeat; +} + +.panelUI-grid .toolbarbutton-1[type="menu"]:-moz-locale-dir(rtl) { + background-position: left 3px top 16px; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menu-dropmarker { + display: none; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker { + -moz-box-align: center; + width: 16px; + margin-inline-start: -16px; + height: 51px; + margin-bottom: 2.2em; + padding: 0; +} + +.panelUI-grid .toolbarbutton-1:not([buttonover])@buttonStateHover@ > .toolbarbutton-menubutton-dropmarker { + background-color: var(--arrowpanel-dimmed) !important; + border-radius: 0 0 0 2px; +} + +.panelUI-grid .toolbarbutton-1:not([buttonover])@buttonStateHover@ > .toolbarbutton-menubutton-dropmarker:-moz-locale-dir(rtl) { + border-radius: 0 0 2px 0; +} + +#main-window:not([customizing]) .panel-combined-button[disabled] > .toolbarbutton-icon { + opacity: .5; +} + +toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) { + width: calc(@menuPanelButtonWidth@); + margin: 0 !important; +} + +toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) { + -moz-box-align: center; + -moz-box-pack: center; +} + +toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"] > iframe { + margin: 4px auto; +} + +#PanelUI-multiView[viewtype="subview"] > .panel-viewcontainer > .panel-viewstack > .panel-mainview > #PanelUI-mainView { + background-color: var(--arrowpanel-dimmed); +} + +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-contents-scroller > #PanelUI-contents > .panel-wide-item, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-contents-scroller > #PanelUI-contents > .toolbarbutton-1:not([panel-multiview-anchor="true"]), +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-update-status, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-fxa > #PanelUI-fxa-status > #PanelUI-fxa-avatar, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-fxa > #PanelUI-fxa-status > #PanelUI-fxa-label, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-fxa > #PanelUI-fxa-icon, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-inner > toolbarseparator, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-inner > #PanelUI-customize, +#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-inner > #PanelUI-help:not([panel-multiview-anchor="true"]) { + opacity: .5; +} + +/* + * XXXgijs: this is a workaround for a layout issue that was caused by these iframes, + * which was affecting subview display. Because of this, we're hiding the iframe *only* + * when displaying a subview. The discerning user might notice this, but it's not nearly + * as bad as the brokenness. + * This hack should be removed once https://bugzilla.mozilla.org/show_bug.cgi?id=975375 + * is addressed. + */ +#PanelUI-multiView[viewtype="subview"] toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) > iframe { + visibility: hidden; +} + +toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) > .toolbarbutton-text { + text-align: center; +} + +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon, +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-icon, +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-badge-stack, +.customization-palette .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon, +.customization-palette .toolbarbutton-1 > .toolbarbutton-icon, +.customization-palette .toolbarbutton-1 > .toolbarbutton-badge-stack, +.panelUI-grid #bookmarks-toolbar-placeholder > .toolbarbutton-icon, +.customization-palette #bookmarks-toolbar-placeholder > .toolbarbutton-icon, +.panel-customization-placeholder-child > .toolbarbutton-icon { + width: 32px; + height: 32px; + min-width: 32px; + min-height: 32px; + /* Explanation for the below formula (A / B - C) + A + Each button is @menuPanelButtonWidth@ wide + B + Each button has two margins. + C (46px / 2 = 23px) + The button icon is 32 pixels wide. + The button has 12px of horizontal padding (6 on each side). + The button has 2px of horizontal border (1 on each side). + Total width of button's icon + button padding should therefore be 46px, + which means each horizontal margin should be the half the button's width - (46/2) px. + */ + margin: 4px calc(@menuPanelButtonWidth@ / 2 - 23px); +} + +/* above we treat the container as the icon for the margins, that is so the +/* badge itself is positioned correctly. Here we make sure that the icon itself +/* has the minimum size we want, but no padding/margin. */ +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-badge-stack > .toolbarbutton-icon, +.customization-palette .toolbarbutton-1 > .toolbarbutton-badge-stack > .toolbarbutton-icon { + width: 32px; + height: 32px; + min-width: 32px; + min-height: 32px; + margin: 0; + padding: 0; +} + +toolbarpaletteitem[place="palette"] > toolbaritem > toolbarbutton { + -moz-box-flex: 1; +} + +#personal-bookmarks[overflowedItem=true] > #bookmarks-toolbar-placeholder { + -moz-box-flex: 1; +} + +#personal-bookmarks[cui-areatype="toolbar"][overflowedItem=true] > #bookmarks-toolbar-placeholder > .toolbarbutton-icon { + margin-inline-end: 2px; +} + +#edit-controls@inAnyPanel@ > #copy-button, +#zoom-controls@inAnyPanel@ > #zoom-reset-button { + border-left: none; + border-right: none; + border-radius: 0; +} + +#zoom-in-button > .toolbarbutton-text, +#zoom-out-button > .toolbarbutton-text, +#zoom-reset-button > .toolbarbutton-icon { + display: none; +} + +#PanelUI-footer { + display: flex; + flex-shrink: 0; + flex-direction: column; + background-color: var(--arrowpanel-dimmed); + padding: 0; + margin: 0; +} + +#main-window[customizing] #PanelUI-footer-fxa { + display: none; +} + +#PanelUI-footer-fxa:not([fxastatus="signedin"]) > toolbarseparator, +#PanelUI-footer-fxa:not([fxastatus="signedin"]) > #PanelUI-fxa-icon, +#PanelUI-footer-fxa:not([fxaprofileimage]) > #PanelUI-fxa-status > #PanelUI-fxa-avatar { + display: none; +} + +#PanelUI-footer-fxa[fxastatus="error"] > #PanelUI-fxa-status::after { + content: url(chrome://browser/skin/warning.svg); + filter: drop-shadow(0 1px 0 hsla(206,50%,10%,.15)); + width: 47px; + padding-top: 1px; + display: block; + text-align: center; + position: relative; + top: 25%; +} + +#PanelUI-update-status[update-status]::after { + content: ""; + width: 14px; + height: 14px; + margin-inline-end: 16.5px; + box-shadow: 0px 1px 0px rgba(255,255,255,.2) inset, 0px -1px 0px rgba(0,0,0,.1) inset, 0px 1px 0px rgba(12,27,38,.2); + border-radius: 2px; + background-size: contain; + display: -moz-box; +} + +#PanelUI-update-status[update-status="succeeded"]::after { + background-image: url(chrome://browser/skin/update-badge.svg); + background-color: #74BF43; +} + +#PanelUI-update-status[update-status="failed"]::after { + background-image: url(chrome://browser/skin/update-badge-failed.svg); + background-color: #D90000; +} + +#PanelUI-fxa-status { + display: flex; + flex: 1 1 0%; + width: 1px; +} + +#PanelUI-footer-inner, +#PanelUI-footer-fxa:not([hidden]) { + display: flex; + border-top: 1px solid var(--panel-separator-color); +} + +#PanelUI-multiView[viewtype="subview"] #PanelUI-footer-inner, +#PanelUI-multiView[viewtype="subview"] #PanelUI-footer-fxa { + position: relative; +} + +#PanelUI-footer-inner > toolbarseparator, +#PanelUI-footer-fxa > toolbarseparator { + border: 0; + border-left: 1px solid var(--panel-separator-color); + margin: 7px 0 7px; + -moz-appearance: none; +} + +#PanelUI-footer-inner:hover > toolbarseparator, +#PanelUI-footer-fxa:hover > toolbarseparator { + margin: 0; +} + +#PanelUI-update-status, +#PanelUI-help, +#PanelUI-fxa-label, +#PanelUI-fxa-icon, +#PanelUI-customize, +#PanelUI-quit { + margin: 0; + padding: 11px 0; + box-sizing: border-box; + min-height: 40px; + -moz-appearance: none; + box-shadow: none; + border: none; + border-radius: 0; + transition: background-color; + -moz-box-orient: horizontal; +} + +#PanelUI-update-status { + border-top: 1px solid var(--panel-separator-color); +} + +#PanelUI-update-status { + border-bottom: 1px solid transparent; + margin-bottom: -1px; +} + +#PanelUI-update-status > .toolbarbutton-text { + width: 0; /* Fancy cropping solution for flexbox. */ +} + +#PanelUI-help, +#PanelUI-quit { + min-width: 46px; +} + +#PanelUI-update-status > .toolbarbutton-text, +#PanelUI-fxa-label > .toolbarbutton-text, +#PanelUI-customize > .toolbarbutton-text { + margin: 0; + padding: 0 6px; + text-align: start; +} + +#PanelUI-help > .toolbarbutton-text, +#PanelUI-quit > .toolbarbutton-text, +#PanelUI-fxa-avatar > .toolbarbutton-text { + display: none; +} + +#PanelUI-update-status > .toolbarbutton-icon, +#PanelUI-fxa-label > .toolbarbutton-icon, +#PanelUI-fxa-icon > .toolbarbutton-icon, +#PanelUI-customize > .toolbarbutton-icon, +#PanelUI-help > .toolbarbutton-icon, +#PanelUI-quit > .toolbarbutton-icon { + margin-inline-end: 0; +} + +#PanelUI-fxa-icon { + padding-inline-start: 15px; + padding-inline-end: 15px; +} + +#PanelUI-fxa-label, +#PanelUI-customize { + flex: 1; + padding-inline-start: 15px; + border-inline-start-style: none; +} + +#PanelUI-footer-fxa[fxaprofileimage="set"] > #PanelUI-fxa-status > #PanelUI-fxa-label, +#PanelUI-footer-fxa[fxaprofileimage="enabled"]:not([fxastatus="error"]) > #PanelUI-fxa-status > #PanelUI-fxa-label { + padding-inline-start: 0px; +} + +#PanelUI-update-status { + width: calc(@menuPanelWidth@ + 30px); + padding-inline-start: 15px; + border-inline-start-style: none; +} + +#PanelUI-update-status { + list-style-image: url(chrome://branding/content/icon16.png); +} + +#PanelUI-fxa-label, +#PanelUI-fxa-icon { + list-style-image: url(chrome://browser/skin/sync-horizontalbar.png); +} + +#PanelUI-remotetabs { + --panel-ui-sync-illustration-height: 157.5px; +} + +.PanelUI-remotetabs-instruction-title, +.PanelUI-remotetabs-instruction-label, +#PanelUI-remotetabs-mobile-promo { + /* If you change the margin here, the min-height of the synced tabs panel + (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, etc) may + need adjusting (see bug 1248506) */ + margin: 15px; + text-align: center; + text-shadow: none; + max-width: 15em; + color: GrayText; +} + +.PanelUI-remotetabs-instruction-title { + font-size: 1.3em; +} + +/* The boxes with "instructions" get extra top and bottom padding for space + around the illustration and buttons */ +.PanelUI-remotetabs-instruction-box { + /* If you change the padding here, the min-height of the synced tabs panel + (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, etc) may + need adjusting (see bug 1248506) */ + padding-bottom: 30px; + padding-top: 15px; +} + +.PanelUI-remotetabs-prefs-button { + -moz-appearance: none; + background-color: #0096dd; + /* !important for the color as an OSX specific rule when a lightweight theme + is used for buttons in the toolbox overrides. See bug 1238531 for details */ + color: white !important; + border-radius: 2px; + /* If you change the margin or padding below, the min-height of the synced tabs + panel (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, + etc) may need adjusting (see bug 1248506) */ + margin-top: 10px; + margin-bottom: 10px; + padding: 8px; + text-shadow: none; + min-width: 200px; +} + +.PanelUI-remotetabs-prefs-button:hover, +.PanelUI-remotetabs-prefs-button:hover:active { + background-color: #018acb; +} + +.remotetabs-promo-link { + margin: 0; +} + +.PanelUI-remotetabs-notabsforclient-label { + color: GrayText; + /* This margin is to line this label up with the labels in toolbarbuttons. */ + margin-left: 28px; +} + +.fxaSyncIllustration { + height: var(--panel-ui-sync-illustration-height); + list-style-image: url(chrome://browser/skin/fxa/sync-illustration.svg); +} + +.PanelUI-remotetabs-prefs-button > .toolbarbutton-text { + /* !important to override ".cui-widget-panel toolbarbutton > .toolbarbutton-text" above. */ + text-align: center !important; + text-shadow: none; +} + +#PanelUI-remotetabs[mainview] { /* panel anchored to toolbar button might be too skinny */ + min-width: 19em; +} + +/* Work around bug 1224412 - these boxes will cause scrollbars to appear when + the panel is anchored to a toolbar button. +*/ +#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, +#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-reauthsync, +#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-nodevicespane, +#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-tabsdisabledpane { + min-height: calc(var(--panel-ui-sync-illustration-height) + + 20px + /* margin of .PanelUI-remotetabs-prefs-button */ + 16px + /* padding of .PanelUI-remotetabs-prefs-button */ + 30px + /* margin of .PanelUI-remotetabs-instruction-label */ + 30px + 15px + /* padding of .PanelUI-remotetabs-instruction-box */ + 11em); +} + +#PanelUI-remotetabs-tabslist > label[itemtype="client"] { + color: GrayText; +} + +/* Collapse the non-active vboxes in the remotetabs deck to use only the + height the active box needs */ +#PanelUI-remotetabs-deck:not([selectedIndex="1"]) > #PanelUI-remotetabs-tabsdisabledpane, +#PanelUI-remotetabs-deck:not([selectedIndex="2"]) > #PanelUI-remotetabs-fetching, +#PanelUI-remotetabs-deck:not([selectedIndex="3"]) > #PanelUI-remotetabs-nodevicespane { + visibility: collapse; +} + +#PanelUI-remotetabs-main[devices-status="single"] > #PanelUI-remotetabs-buttons { + display: none; +} + +#PanelUI-fxa-icon[syncstatus="active"]:not([disabled]) { + list-style-image: url(chrome://browser/skin/syncProgress-horizontalbar.png); +} + +#PanelUI-footer-fxa[fxastatus="migrate-signup"] > #PanelUI-fxa-status > #PanelUI-fxa-label, +#PanelUI-footer-fxa[fxastatus="migrate-verify"] > #PanelUI-fxa-status > #PanelUI-fxa-label { + list-style-image: url(chrome://browser/skin/warning.svg); + -moz-image-region: auto; +} + +#PanelUI-customize { + list-style-image: url(chrome://browser/skin/menuPanel-customize.png); +} + +#customization-panelHolder #PanelUI-customize { + list-style-image: url(chrome://browser/skin/customizableui/menuPanel-customizeFinish.png); +} + +#PanelUI-help { + list-style-image: url(chrome://browser/skin/menuPanel-help.png); +} + +#PanelUI-quit { + border-inline-end-style: none; + list-style-image: url(chrome://browser/skin/menuPanel-exit.png); +} + +#PanelUI-fxa-label, +#PanelUI-fxa-icon, +#PanelUI-customize, +#PanelUI-help, +#PanelUI-quit { + -moz-image-region: rect(0, 16px, 16px, 0); +} + +#PanelUI-footer-fxa[fxastatus="signedin"] > #PanelUI-fxa-status > #PanelUI-fxa-label > .toolbarbutton-icon, +#PanelUI-footer-fxa[fxastatus="error"][fxaprofileimage="set"] > #PanelUI-fxa-status > #PanelUI-fxa-label > .toolbarbutton-icon { + display: none; +} + +#PanelUI-footer-fxa[fxastatus="error"]:not([fxaprofileimage="set"]) > #PanelUI-fxa-status > #PanelUI-fxa-avatar { + display: none; +} + +#PanelUI-fxa-status[disabled], +#PanelUI-fxa-icon[disabled] { + pointer-events: none; +} + +#PanelUI-fxa-avatar { + width: 32px; + height: 32px; + border-radius: 50%; + background-repeat: no-repeat; + background-position: 0 0; + background-size: contain; + align-self: center; + margin: 0px 7px; + padding: 0px; + border: 0px none; + margin-inline-end: 0; +} + +#PanelUI-footer-fxa[fxaprofileimage="enabled"] > #PanelUI-fxa-status > #PanelUI-fxa-avatar { + list-style-image: url(chrome://browser/skin/fxa/default-avatar.svg); +} + +#PanelUI-customize:hover, +#PanelUI-help:not([disabled]):hover, +#PanelUI-quit:not([disabled]):hover { + -moz-image-region: rect(0, 32px, 16px, 16px); +} + +#PanelUI-customize:hover:active, +#PanelUI-help:not([disabled]):hover:active, +#PanelUI-quit:not([disabled]):hover:active { + -moz-image-region: rect(0, 48px, 16px, 32px); +} + +#PanelUI-help[panel-multiview-anchor="true"] { + -moz-image-region: rect(0, 64px, 16px, 48px); +} + +#PanelUI-help[disabled], +#PanelUI-quit[disabled], +#PanelUI-fxa-icon[disabled], +#PanelUI-fxa-avatar[disabled], +#PanelUI-fxa-label[disabled] > .toolbarbutton-icon, +#PanelUI-fxa-status::after { + opacity: 0.4; +} + +#PanelUI-fxa-status:not([disabled]):hover, +#PanelUI-fxa-icon:not([disabled]):hover, +#PanelUI-help:not([disabled]):hover, +#PanelUI-customize:hover, +#PanelUI-quit:not([disabled]):hover { + outline: 1px solid var(--arrowpanel-dimmed); + background-color: var(--arrowpanel-dimmed); +} + +#PanelUI-fxa-status:not([disabled]):hover:active, +#PanelUI-fxa-icon:not([disabled]):hover:active, +#PanelUI-help:not([disabled]):hover:active, +#PanelUI-customize:hover:active, +#PanelUI-quit:not([disabled]):hover:active { + outline: 1px solid var(--arrowpanel-dimmed-further); + background-color: var(--arrowpanel-dimmed-further); + box-shadow: 0 1px 0 hsla(210,4%,10%,.05) inset; +} + +#PanelUI-fxa-status:not([disabled]):hover, +#PanelUI-fxa-status:not([disabled]):hover:active, +#PanelUI-fxa-icon:not([disabled]):hover, +#PanelUI-fxa-icon:not([disabled]):hover:active { + outline: none; +} + +#PanelUI-footer-fxa[fxastatus="error"] { + background-color: hsl(42,94%,88%); + border-top: 1px solid hsl(42,94%,70%); +} + +#PanelUI-footer-fxa[fxastatus="error"] > #PanelUI-fxa-status:hover { + background-color: hsl(42,94%,85%); +} + +#PanelUI-footer-fxa[fxastatus="error"] > #PanelUI-fxa-status:hover:active { + background-color: hsl(42,94%,82%); + box-shadow: 0 1px 0 hsla(210,4%,10%,.05) inset; +} + +#PanelUI-update-status { + color: black; +} + +#PanelUI-update-status[update-status="succeeded"] { + background-color: hsla(96,65%,75%,.5); +} + +#PanelUI-update-status[update-status="succeeded"]:not([disabled]):hover { + background-color: hsla(96,65%,75%,.8); +} + +#PanelUI-update-status[update-status="succeeded"]:not([disabled]):hover:active { + background-color: hsl(96,65%,75%); +} + +#PanelUI-update-status[update-status="failed"] { + background-color: hsla(359,69%,84%,.5); +} + +#PanelUI-update-status[update-status="failed"]:not([disabled]):hover { + background-color: hsla(359,69%,84%,.8); +} + +#PanelUI-update-status[update-status="failed"]:not([disabled]):hover:active { + background-color: hsl(359,69%,84%); +} + +#PanelUI-quit:not([disabled]):hover { + background-color: #d94141; + outline-color: #c23a3a; +} + +#PanelUI-quit:not([disabled]):hover:active { + background-color: #ad3434; + outline-color: #992e2e; +} + +#customization-panelHolder #PanelUI-customize { + color: white; + background-color: hsl(108,66%,30%); + text-shadow: none; + margin-top: -1px; +} + +#customization-panelHolder #PanelUI-customize + toolbarseparator { + display: none; +} + +#customization-panelHolder #PanelUI-customize:hover { + background-color: hsl(109,65%,26%); +} + +#customization-panelHolder #PanelUI-customize:hover:active { + background-color: hsl(109,65%,22%); +} + +#customization-palette .toolbarbutton-multiline-text, +#customization-palette .toolbarbutton-text { + display: none; +} + +panelview .toolbarbutton-1, +.subviewbutton, +.widget-overflow-list .toolbarbutton-1, +.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button, +.share-provider-button, +.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton { + -moz-appearance: none; + padding: 0 6px; + background-color: transparent; + border-radius: 2px; + border-style: solid; + border-color: transparent; +} + +panelview .toolbarbutton-1, +.subviewbutton, +.widget-overflow-list .toolbarbutton-1, +.share-provider-button, +.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton { + border-width: 1px; +} + +.subviewbutton.panel-subview-footer { + border-radius: 0; + border: none; +} + +.subviewbutton.panel-subview-footer > .menu-text { + -moz-appearance: none; + margin-inline-start: 0px !important; + padding-inline-start: 6px; + padding-inline-end: 6px; + -moz-box-flex: 0; + text-align: center; +} + +.subviewbutton.panel-subview-footer > .toolbarbutton-icon { + margin: 0; +} + +.subviewbutton.panel-subview-footer > .toolbarbutton-text { + text-align: center; + padding: 0; +} + +.subviewbutton.panel-subview-footer > .menu-accel-container { + padding-inline-start: 6px; +} + +.subviewbutton:not(.panel-subview-footer) { + margin: 0; +} + +.subviewbutton:not(.panel-subview-footer) > .toolbarbutton-text, +/* Bookmark items need a more specific selector. */ +.PanelUI-subView .subviewbutton:not(.panel-subview-footer) > .menu-text, +.PanelUI-subView .subviewbutton:not(.panel-subview-footer) > .menu-iconic-text { + font: menu; +} + +.PanelUI-subView .subviewbutton[shortcut]::after { + content: attr(shortcut); + float: right; + color: GrayText; +} + +.PanelUI-subView.cui-widget-panelview .subviewbutton[shortcut]::after { + margin-inline-start: 10px; +} + +/* This is a