gecko-dev/toolkit/themes/shared/popupnotification.css

157 строки
4.0 KiB
CSS

/* 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");
.popup-notification-panel::part(content) {
/* To keep the rounded borders of the panel, we use overflow: hidden; from the
* panel-no-padding class to ensure the contents are clipped to the border box.
* That causes us to override the "display" property so that the height of the
* contents is computed correctly. */
display: flex;
/* Make multiple popupnotifications stack vertically. */
flex-direction: column;
}
.popup-notification-panel > popupnotification:not([hidden]) {
/* Since the anonymous parent (::part(content)) has display: flex, sizing
* computations work better with display: block; than with the XUL default
* display: -moz-box; */
display: block;
}
popupnotification {
font: caption;
}
popupnotificationcontent {
margin-top: .5em;
}
.popup-notification-header-container,
.popup-notification-footer-container {
display: flex;
/** Padding + Icon width + border-radius + popup-notification-body-width **/
max-width: calc(2 * var(--arrowpanel-padding) + 32px + 4px + var(--popup-notification-body-width));
}
.popup-notification-body-container {
padding: var(--arrowpanel-padding);
}
.popup-notification-icon {
width: 32px;
height: 32px;
margin-inline-end: var(--arrowpanel-padding);
}
.popup-notification-body {
width: var(--popup-notification-body-width);
}
.popup-notification-closebutton {
margin-inline-end: -8px;
margin-top: -8px;
}
.popup-notification-origin:not([value]),
.popup-notification-learnmore-link:not([href]) {
display: none;
}
.popup-notification-origin {
margin-bottom: .3em !important;
}
.popup-notification-hint-text {
margin-top: .5em !important;
}
.popup-notification-hint-text:empty {
display: none;
}
@media (-moz-platform: windows) {
/* Swap the primary and secondary action, because Windows
* platform conventions put the primary action on the left. */
.panel-footer > .popup-notification-primary-button:not([default]) {
order: -1;
}
}
.popup-notification-secondary-button:not([dropmarkerhidden="true"]) {
border-start-end-radius: 0;
border-end-end-radius: 0;
}
/**
* The focus ring is an outline thicker than 1px, meaning that for split buttons,
* if the main button part of the split button has :focus-visible, the ring will
* be partially hidden behind the dropmarker button. We work around this by
* temporarily boosting the z-index of the main button while showing its focus
* ring.
*/
.popup-notification-secondary-button:not([dropmarkerhidden="true"]):focus-visible {
z-index: 2;
}
.popup-notification-dropmarker {
border-start-start-radius: 0 !important;
border-end-start-radius: 0 !important;
margin-inline-start: 1px !important;
padding: 8px !important;
max-width: 32px;
}
.popup-notification-dropmarker > .button-box > hbox {
display: none;
}
.popup-notification-dropmarker > .button-box > .button-menu-dropmarker {
/* This is to override the linux !important */
appearance: none !important;
display: -moz-box;
padding: 0;
margin: 0;
}
@media (-moz-platform: windows) {
/* Override default icon size which is too small for this dropdown */
.popup-notification-dropmarker > .button-box > .button-menu-dropmarker {
width: 16px;
height: 16px;
}
}
.popup-notification-dropmarker > .button-box > .button-menu-dropmarker::part(icon) {
width: 16px;
height: 16px;
list-style-image: url(chrome://global/skin/icons/arrow-down.svg);
-moz-context-properties: fill;
fill: currentColor;
}
.popup-notification-warning {
color: #d74345;
}
.popup-notification-icon:not([hasicon]) {
display: none;
}
.popup-notification-icon {
height: 16px;
width: 16px;
margin-inline-end: 6px;
}
.popup-notification-checkbox > .checkbox-label-box > .checkbox-label {
opacity: 0.7;
}
.popup-notification-learnmore-link {
text-decoration: underline;
margin-block: 4px 0;
}