/* 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 { border: 1px solid ThreeDShadow; padding: 0; min-width: 1px; background: Menu; color: MenuText; } menupopup { appearance: auto; -moz-default-appearance: menupopup; } menupopup > menu > menupopup { /* align submenus */ margin-inline-start: -3px; margin-top: -3px; } panel[type="arrow"] { appearance: none; background: transparent; border: none; } panel[type="arrow"][side="top"], panel[type="arrow"][side="bottom"] { margin-inline: -20px; } panel[type="arrow"][side="left"], panel[type="arrow"][side="right"] { margin-block: -20px; } .panel-arrowcontent { padding: var(--arrowpanel-padding); color: var(--arrowpanel-color); background: var(--arrowpanel-background); background-clip: padding-box; border: 1px solid var(--arrowpanel-border-color); box-shadow: 0 0 4px hsla(0,0%,0%,.2); margin: 4px; } .panel-arrowcontent > html|slot { /* propagate border-radius from arrowcontent to slotted children */ border-radius: inherit; } :host([orient=vertical]) .panel-arrowcontent { -moz-box-orient: vertical; } %ifdef XP_WIN @media (-moz-os-version: windows-win7) { %endif .panel-arrowcontent { border-radius: 4px; } %ifdef XP_WIN } %endif panel[type="arrow"].panel-no-padding::part(arrowcontent) { padding: 0; overflow: hidden; /* Don't let panel content overflow the border-radius */ } :is(panel, menupopup)::part(arrow) { -moz-context-properties: fill, stroke; fill: var(--arrowpanel-background); stroke: var(--arrowpanel-border-color); } :is(panel, menupopup)[side="top"]::part(arrow), :is(panel, menupopup)[side="bottom"]::part(arrow) { list-style-image: url("chrome://global/skin/arrow/panelarrow-vertical.svg"); position: relative; margin-inline: 10px; } :is(panel, menupopup)[side="top"]::part(arrow) { margin-bottom: -5px; } :is(panel, menupopup)[side="bottom"]::part(arrow) { transform: scaleY(-1); margin-top: -5px; } :is(panel, menupopup)[side="left"]::part(arrow), :is(panel, menupopup)[side="right"]::part(arrow) { list-style-image: url("chrome://global/skin/arrow/panelarrow-horizontal.svg"); position: relative; margin-block: 10px; } :is(panel, menupopup)[side="left"]::part(arrow) { margin-right: -5px; } :is(panel, menupopup)[side="right"]::part(arrow) { transform: scaleX(-1); margin-left: -5px; } %ifdef XP_WIN @media (-moz-windows-default-theme) { .panel-arrowcontent { box-shadow: 0 0 4px hsla(210,4%,10%,.2); } } %endif /* rules for popups associated with menulists */ menulist > menupopup { appearance: none; min-width: 0; background-color: Field; }