Bug 1945700 - Add a boolean background property to dismiss buttons that enables contrasting colours r=omc-reviewers,aminomancer

Differential Revision: https://phabricator.services.mozilla.com/D237640
This commit is contained in:
Emily McMinn
2025-02-28 23:12:17 +00:00
parent bea3043c03
commit c4129a5ba8
8 changed files with 216 additions and 4 deletions

View File

@@ -2086,6 +2086,18 @@ html {
left: 0; left: 0;
right: auto; right: auto;
} }
&.with-background {
background-color: var(--in-content-page-background);
&:hover {
background-color: var(--button-background-color-hover);
}
&:active {
background-color: var(--button-background-color-active);
}
}
} }
@keyframes fadein { @keyframes fadein {

View File

@@ -307,11 +307,11 @@ export class ProtonScreen extends React.PureComponent {
} }
renderDismissButton() { renderDismissButton() {
const { size, marginBlock, marginInline, label } = const { size, marginBlock, marginInline, label, background } =
this.props.content.dismiss_button; this.props.content.dismiss_button;
return ( return (
<button <button
className="dismiss-button" className={`dismiss-button ${background ? "with-background" : ""}`}
onClick={this.props.handleAction} onClick={this.props.handleAction}
value="dismiss_button" value="dismiss_button"
data-l10n-id={label?.string_id || "spotlight-dialog-close-button"} data-l10n-id={label?.string_id || "spotlight-dialog-close-button"}

View File

@@ -1137,10 +1137,11 @@ class ProtonScreen extends (react__WEBPACK_IMPORTED_MODULE_0___default().PureCom
size, size,
marginBlock, marginBlock,
marginInline, marginInline,
label label,
background
} = this.props.content.dismiss_button; } = this.props.content.dismiss_button;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
className: "dismiss-button", className: `dismiss-button ${background ? "with-background" : ""}`,
onClick: this.props.handleAction, onClick: this.props.handleAction,
value: "dismiss_button", value: "dismiss_button",
"data-l10n-id": label?.string_id || "spotlight-dialog-close-button", "data-l10n-id": label?.string_id || "spotlight-dialog-close-button",

View File

@@ -30,6 +30,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB); --fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB);
--fc-link-color-active: var(--fc-link-color-active-light, #053E94); --fc-link-color-active: var(--fc-link-color-active-light, #053E94);
--fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2); --fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-light, #FFF);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-light, color-mix(in srgb, currentColor 14%, #FFF));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-light, color-mix(in srgb, currentColor 14%, #FFF));
position: absolute; position: absolute;
z-index: 2147483647; z-index: 2147483647;
outline: none; outline: none;
@@ -76,8 +79,78 @@
--fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF); --fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF);
--fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF); --fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF);
--fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD); --fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-dark, rgb(66, 65, 77));
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
} }
} }
:root[lwt-popup=light] #feature-callout:not(.simulateContent) {
color-scheme: light;
--fc-background: var(--fc-background-light, #FFF);
--fc-color: var(--fc-color-light, rgb(21, 20, 26));
--fc-border: var(--fc-border-light, #CFCFD8);
--fc-accent-color: var(--fc-accent-color-light, rgb(0, 97, 224));
--fc-button-background: var(--fc-button-background-light, #F0F0F4);
--fc-button-color: var(--fc-button-color-light, rgb(21, 20, 26));
--fc-button-border: var(--fc-button-border-light, transparent);
--fc-button-background-hover: var(--fc-button-background-hover-light, #E0E0E6);
--fc-button-color-hover: var(--fc-button-color-hover-light, rgb(21, 20, 26));
--fc-button-border-hover: var(--fc-button-border-hover-light, transparent);
--fc-button-background-active: var(--fc-button-background-active-light, #CFCFD8);
--fc-button-color-active: var(--fc-button-color-active-light, rgb(21, 20, 26));
--fc-button-border-active: var(--fc-button-border-active-light, transparent);
--fc-primary-button-background: var(--fc-primary-button-background-light, #0061E0);
--fc-primary-button-color: var(--fc-primary-button-color-light, rgb(251,251,254));
--fc-primary-button-border: var(--fc-primary-button-border-light, transparent);
--fc-primary-button-background-hover: var(--fc-primary-button-background-hover-light, #0250BB);
--fc-primary-button-color-hover: var(--fc-primary-button-color-hover-light, rgb(251,251,254));
--fc-primary-button-border-hover: var(--fc-primary-button-border-hover-light, transparent);
--fc-primary-button-background-active: var(--fc-primary-button-background-active-light, #053E94);
--fc-primary-button-color-active: var(--fc-primary-button-color-active-light, rgb(251,251,254));
--fc-primary-button-border-active: var(--fc-primary-button-border-active-light, transparent);
--fc-step-color: color-mix(in srgb, currentColor 50%, transparent);
--fc-link-color: var(--fc-link-color-light, #0061E0);
--fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB);
--fc-link-color-active: var(--fc-link-color-active-light, #053E94);
--fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-light, #FFF);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-light, color-mix(in srgb, currentColor 14%, #FFF));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-light, color-mix(in srgb, currentColor 14%, #FFF));
}
:root[lwt-popup=dark] #feature-callout:not(.simulateContent) {
color-scheme: dark;
--fc-background: var(--fc-background-dark, rgb(43, 42, 51));
--fc-color: var(--fc-color-dark, rgb(251, 251, 254));
--fc-border: var(--fc-border-dark, #3A3944);
--fc-accent-color: var(--fc-accent-color-dark, rgb(0, 221, 255));
--fc-button-background: var(--fc-button-background-dark, #2B2A33);
--fc-button-color: var(--fc-button-color-dark, rgb(251, 251, 254));
--fc-button-border: var(--fc-button-border-dark, transparent);
--fc-button-background-hover: var(--fc-button-background-hover-dark, #52525E);
--fc-button-color-hover: var(--fc-button-color-hover-dark, rgb(251, 251, 254));
--fc-button-border-hover: var(--fc-button-border-hover-dark, transparent);
--fc-button-background-active: var(--fc-button-background-active-dark, #5B5B66);
--fc-button-color-active: var(--fc-button-color-active-dark, rgb(251, 251, 254));
--fc-button-border-active: var(--fc-button-border-active-dark, transparent);
--fc-primary-button-background: var(--fc-primary-button-background-dark, rgb(0,221,255));
--fc-primary-button-color: var(--fc-primary-button-color-dark, rgb(43,42,51));
--fc-primary-button-border: var(--fc-primary-button-border-dark, transparent);
--fc-primary-button-background-hover: var(--fc-primary-button-background-hover-dark, rgb(128,235,255));
--fc-primary-button-color-hover: var(--fc-primary-button-color-hover-dark, rgb(43,42,51));
--fc-primary-button-border-hover: var(--fc-primary-button-border-hover-dark, transparent);
--fc-primary-button-background-active: var(--fc-primary-button-background-active-dark, rgb(170,242,255));
--fc-primary-button-color-active: var(--fc-primary-button-color-active-dark, rgb(43,42,51));
--fc-primary-button-border-active: var(--fc-primary-button-border-active-dark, transparent);
--fc-link-color: var(--fc-link-color-dark, #00DDFF);
--fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF);
--fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF);
--fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-dark, rgb(66, 65, 77));
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
}
@media (prefers-contrast) { @media (prefers-contrast) {
#feature-callout { #feature-callout {
--fc-background: var(--fc-background-hcm, -moz-dialog); --fc-background: var(--fc-background-hcm, -moz-dialog);
@@ -107,6 +180,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-hcm, LinkText); --fc-link-color-hover: var(--fc-link-color-hover-hcm, LinkText);
--fc-link-color-active: var(--fc-link-color-active-hcm, ActiveText); --fc-link-color-active: var(--fc-link-color-active-hcm, ActiveText);
--fc-icon-success-color: var(--fc-icon-success-color-hcm, LinkText); --fc-icon-success-color: var(--fc-icon-success-color-hcm, LinkText);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-hcm, -moz-dialog);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-hcm, color-mix(in srgb, currentColor 14%, -moz-dialog));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-hcm, color-mix(in srgb, currentColor 14%, -moz-dialog));
} }
} }
#feature-callout.simulateContent { #feature-callout.simulateContent {
@@ -141,6 +217,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB); --fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB);
--fc-link-color-active: var(--fc-link-color-active-light, #053E94); --fc-link-color-active: var(--fc-link-color-active-light, #053E94);
--fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2); --fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-light, #FFF);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-light, color-mix(in srgb, currentColor 14%, #FFF));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-light, color-mix(in srgb, currentColor 14%, #FFF));
} }
} }
@media (-moz-content-prefers-color-scheme: dark) { @media (-moz-content-prefers-color-scheme: dark) {
@@ -171,6 +250,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF); --fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF);
--fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF); --fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF);
--fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD); --fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-dark, rgb(66, 65, 77));
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
} }
} }
:root[lwt-newtab-brighttext] #feature-callout.simulateContent.lwtNewtab { :root[lwt-newtab-brighttext] #feature-callout.simulateContent.lwtNewtab {
@@ -201,6 +283,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF); --fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF);
--fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF); --fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF);
--fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD); --fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-dark, rgb(66, 65, 77));
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
} }
@media (prefers-contrast) { @media (prefers-contrast) {
@@ -232,6 +317,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-hcm, LinkText); --fc-link-color-hover: var(--fc-link-color-hover-hcm, LinkText);
--fc-link-color-active: var(--fc-link-color-active-hcm, ActiveText); --fc-link-color-active: var(--fc-link-color-active-hcm, ActiveText);
--fc-icon-success-color: var(--fc-icon-success-color-hcm, LinkText); --fc-icon-success-color: var(--fc-icon-success-color-hcm, LinkText);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-hcm, -moz-dialog);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-hcm, color-mix(in srgb, currentColor 14%, -moz-dialog));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-hcm, color-mix(in srgb, currentColor 14%, -moz-dialog));
} }
} }
panel#feature-callout { panel#feature-callout {
@@ -446,6 +534,15 @@ div#feature-callout.hidden {
min-height: 24px; min-height: 24px;
min-width: 24px; min-width: 24px;
} }
#feature-callout .screen[pos=callout] .section-main .dismiss-button.with-background {
background: url("chrome://global/skin/icons/close.svg") no-repeat center/16px, var(--fc-dismiss-button-bg);
}
#feature-callout .screen[pos=callout] .section-main .dismiss-button.with-background:hover {
background: url("chrome://global/skin/icons/close.svg") no-repeat center/16px, var(--fc-dismiss-button-bg-hover);
}
#feature-callout .screen[pos=callout] .section-main .dismiss-button.with-background:hover:active {
background: url("chrome://global/skin/icons/close.svg") no-repeat center/16px, var(--fc-dismiss-button-bg-active);
}
#feature-callout .screen[pos=callout] .action-buttons { #feature-callout .screen[pos=callout] .action-buttons {
display: flex; display: flex;
flex-flow: row nowrap; flex-flow: row nowrap;
@@ -3043,6 +3140,15 @@ html {
left: 0; left: 0;
right: auto; right: auto;
} }
.onboardingContainer .dismiss-button.with-background {
background-color: var(--in-content-page-background);
}
.onboardingContainer .dismiss-button.with-background:hover {
background-color: var(--button-background-color-hover);
}
.onboardingContainer .dismiss-button.with-background:active {
background-color: var(--button-background-color-active);
}
@keyframes fadein { @keyframes fadein {
from { from {
opacity: 0; opacity: 0;

View File

@@ -33,6 +33,9 @@
--fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB); --fc-link-color-hover: var(--fc-link-color-hover-light, #0250BB);
--fc-link-color-active: var(--fc-link-color-active-light, #053E94); --fc-link-color-active: var(--fc-link-color-active-light, #053E94);
--fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2); --fc-icon-success-color: var(--fc-icon-success-color-light, #2AC3A2);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-light, #FFF);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-light, color-mix(in srgb, currentColor 14%, #FFF));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-light, color-mix(in srgb, currentColor 14%, #FFF));
} }
@mixin dark-theme { @mixin dark-theme {
@@ -62,6 +65,10 @@
--fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF); --fc-link-color-hover: var(--fc-link-color-hover-dark, #80EBFF);
--fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF); --fc-link-color-active: var(--fc-link-color-hover-active, #AAF2FF);
--fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD); --fc-icon-success-color: var(--fc-icon-success-color-dark, #54FFBD);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-dark, rgb(66, 65, 77));
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-dark, color-mix(in srgb, currentColor 14%, rgb(66, 65, 77)));
} }
@mixin hcm-theme { @mixin hcm-theme {
@@ -92,4 +99,7 @@
--fc-link-color-hover: var(--fc-link-color-hover-hcm, LinkText); --fc-link-color-hover: var(--fc-link-color-hover-hcm, LinkText);
--fc-link-color-active: var(--fc-link-color-active-hcm, ActiveText); --fc-link-color-active: var(--fc-link-color-active-hcm, ActiveText);
--fc-icon-success-color: var(--fc-icon-success-color-hcm, LinkText); --fc-icon-success-color: var(--fc-icon-success-color-hcm, LinkText);
--fc-dismiss-button-bg: var(--fc-dismiss-button-bg-hcm, -moz-dialog);
--fc-dismiss-button-bg-hover: var(--fc-dismiss-button-bg-hover-hcm, color-mix(in srgb, currentColor 14%, -moz-dialog));
--fc-dismiss-button-bg-active: var(--fc-dismiss-button-bg-active-hcm, color-mix(in srgb, currentColor 14%, -moz-dialog));
} }

View File

@@ -24,6 +24,18 @@
@include dark-theme; @include dark-theme;
} }
@at-root :root[lwt-popup='light'] #{&}:not(.simulateContent) {
color-scheme: light;
@include light-theme;
}
@at-root :root[lwt-popup='dark'] #{&}:not(.simulateContent) {
color-scheme: dark;
@include dark-theme;
}
@media (prefers-contrast) { @media (prefers-contrast) {
@include hcm-theme; @include hcm-theme;
} }
@@ -366,6 +378,18 @@
min-height: 24px; min-height: 24px;
min-width: 24px; min-width: 24px;
} }
&.with-background {
background: url('chrome://global/skin/icons/close.svg') no-repeat center / 16px, var(--fc-dismiss-button-bg);
&:hover {
background: url('chrome://global/skin/icons/close.svg') no-repeat center / 16px, var(--fc-dismiss-button-bg-hover);
&:active {
background: url('chrome://global/skin/icons/close.svg') no-repeat center / 16px, var(--fc-dismiss-button-bg-active);
}
}
}
} }
} }

View File

@@ -1955,6 +1955,9 @@ export class FeatureCallout {
"link-color-hover", "link-color-hover",
"link-color-active", "link-color-active",
"icon-success-color", "icon-success-color",
"dismiss-button-bg",
"dismiss-button-bg-hover",
"dismiss-button-bg-active",
]; ];
/** @type {Object<String, FeatureCalloutTheme>} */ /** @type {Object<String, FeatureCalloutTheme>} */
@@ -2002,6 +2005,12 @@ export class FeatureCallout {
"link-color-hover": "LinkText", "link-color-hover": "LinkText",
"link-color-active": "ActiveText", "link-color-active": "ActiveText",
"link-color-visited": "VisitedText", "link-color-visited": "VisitedText",
"dismiss-button-bg":
"var(--newtab-background-color, var(--in-content-page-background)) linear-gradient(var(--newtab-background-color-secondary), var(--newtab-background-color-secondary))",
"dismiss-button-bg-hover":
"var(--newtab-background-color, var(--in-content-page-background)) linear-gradient(color-mix(in srgb, currentColor 14%, var(--newtab-background-color-secondary)), color-mix(in srgb, currentColor 14%, var(--newtab-background-color-secondary)))",
"dismiss-button-bg-active":
"var(--newtab-background-color, var(--in-content-page-background)) linear-gradient(color-mix(in srgb, currentColor 21%, var(--newtab-background-color-secondary)), color-mix(in srgb, currentColor 21%, var(--newtab-background-color-secondary)))",
}, },
dark: { dark: {
border: border:
@@ -2024,6 +2033,11 @@ export class FeatureCallout {
"button-background-active": "ButtonText", "button-background-active": "ButtonText",
"button-color-active": "ButtonFace", "button-color-active": "ButtonFace",
"button-border-active": "ButtonText", "button-border-active": "ButtonText",
"dismiss-button-bg": "-moz-dialog",
"dismiss-button-bg-hover":
"color-mix(in srgb, currentColor 14%, -moz-dialog)",
"dismiss-button-bg-active":
"color-mix(in srgb, currentColor 21%, -moz-dialog)",
}, },
}, },
// PDF.js colors are from toolkit/components/pdfjs/content/web/viewer.css // PDF.js colors are from toolkit/components/pdfjs/content/web/viewer.css
@@ -2047,6 +2061,10 @@ export class FeatureCallout {
"link-color-hover": "LinkText", "link-color-hover": "LinkText",
"link-color-active": "ActiveText", "link-color-active": "ActiveText",
"link-color-visited": "VisitedText", "link-color-visited": "VisitedText",
"dismiss-button-bg": "#FFF",
"dismiss-button-bg-hover": "color-mix(in srgb, currentColor 14%, #FFF)",
"dismiss-button-bg-active":
"color-mix(in srgb, currentColor 21%, #FFF)",
}, },
dark: { dark: {
background: "#1C1B22", background: "#1C1B22",
@@ -2058,6 +2076,11 @@ export class FeatureCallout {
"button-color-hover": "#F9F9FA", "button-color-hover": "#F9F9FA",
"button-background-active": "rgb(102, 102, 103)", "button-background-active": "rgb(102, 102, 103)",
"button-color-active": "#F9F9FA", "button-color-active": "#F9F9FA",
"dismiss-button-bg": "#1C1B22",
"dismiss-button-bg-hover":
"color-mix(in srgb, currentColor 14%, #1C1B22)",
"dismiss-button-bg-active":
"color-mix(in srgb, currentColor 21%, #1C1B22)",
}, },
hcm: { hcm: {
background: "-moz-dialog", background: "-moz-dialog",
@@ -2073,6 +2096,11 @@ export class FeatureCallout {
"button-background-active": "Highlight", "button-background-active": "Highlight",
"button-color-active": "CanvasText", "button-color-active": "CanvasText",
"button-border-active": "Highlight", "button-border-active": "Highlight",
"dismiss-button-bg": "-moz-dialog",
"dismiss-button-bg-hover":
"color-mix(in srgb, currentColor 14%, -moz-dialog)",
"dismiss-button-bg-active":
"color-mix(in srgb, currentColor 21%, -moz-dialog)",
}, },
}, },
newtab: { newtab: {
@@ -2098,6 +2126,12 @@ export class FeatureCallout {
"link-color-active": "color-mix(in srgb, rgb(0, 97, 224) 80%, #000)", "link-color-active": "color-mix(in srgb, rgb(0, 97, 224) 80%, #000)",
"link-color-visited": "rgb(0, 97, 224)", "link-color-visited": "rgb(0, 97, 224)",
"icon-success-color": "#2AC3A2", "icon-success-color": "#2AC3A2",
"dismiss-button-bg":
"var(--newtab-background-color, #F9F9FB) linear-gradient(var(--newtab-background-color-secondary, #FFF), var(--newtab-background-color-secondary, #FFF))",
"dismiss-button-bg-hover":
"var(--newtab-background-color, #F9F9FB) linear-gradient(color-mix(in srgb, currentColor 14%, var(--newtab-background-color-secondary, #FFF)), color-mix(in srgb, currentColor 14%, var(--newtab-background-color-secondary, #FFF)))",
"dismiss-button-bg-active":
"var(--newtab-background-color, #F9F9FB) linear-gradient(color-mix(in srgb, currentColor 21%, var(--newtab-background-color-secondary, #FFF)), color-mix(in srgb, currentColor 21%, var(--newtab-background-color-secondary, #FFF)))",
}, },
dark: { dark: {
"accent-color": "rgb(0, 221, 255)", "accent-color": "rgb(0, 221, 255)",
@@ -2113,6 +2147,12 @@ export class FeatureCallout {
"link-color-active": "color-mix(in srgb, rgb(0, 221, 255) 60%, #FFF)", "link-color-active": "color-mix(in srgb, rgb(0, 221, 255) 60%, #FFF)",
"link-color-visited": "rgb(0, 221, 255)", "link-color-visited": "rgb(0, 221, 255)",
"icon-success-color": "#54FFBD", "icon-success-color": "#54FFBD",
"dismiss-button-bg":
"var(--newtab-background-color, #2B2A33) linear-gradient(var(--newtab-background-color-secondary, #42414D), var(--newtab-background-color-secondary, #42414D))",
"dismiss-button-bg-hover":
"var(--newtab-background-color, #2B2A33) linear-gradient(color-mix(in srgb, currentColor 14%, var(--newtab-background-color-secondary, #42414D)), color-mix(in srgb, currentColor 14%, var(--newtab-background-color-secondary, #42414D)))",
"dismiss-button-bg-active":
"var(--newtab-background-color, #2B2A33) linear-gradient(color-mix(in srgb, currentColor 21%, var(--newtab-background-color-secondary, #42414D), color-mix(in srgb, currentColor 21%, var(--newtab-background-color-secondary, #42414D)))",
}, },
hcm: { hcm: {
background: "-moz-dialog", background: "-moz-dialog",
@@ -2132,6 +2172,11 @@ export class FeatureCallout {
"link-color-hover": "LinkText", "link-color-hover": "LinkText",
"link-color-active": "ActiveText", "link-color-active": "ActiveText",
"link-color-visited": "VisitedText", "link-color-visited": "VisitedText",
"dismiss-button-bg": "-moz-dialog",
"dismiss-button-bg-hover":
"color-mix(in srgb, currentColor 14%, -moz-dialog)",
"dismiss-button-bg-active":
"color-mix(in srgb, currentColor 21%, -moz-dialog)",
}, },
}, },
// These colors are intended to inherit the user's theme properties from the // These colors are intended to inherit the user's theme properties from the
@@ -2173,9 +2218,20 @@ export class FeatureCallout {
"link-color-active": "ActiveText", "link-color-active": "ActiveText",
"link-color-visited": "VisitedText", "link-color-visited": "VisitedText",
"icon-success-color": "var(--attention-dot-color)", "icon-success-color": "var(--attention-dot-color)",
"dismiss-button-bg":
"Menu linear-gradient(var(--arrowpanel-background), var(--arrowpanel-background))",
"dismiss-button-bg-hover":
"Menu linear-gradient(color-mix(in srgb, currentColor 14%, var(--arrowpanel-background)))",
"dismiss-button-bg-active":
"Menu linear-gradient(color-mix(in srgb, currentColor 21%, var(--arrowpanel-background)))",
}, },
hcm: { hcm: {
background: "var(--arrowpanel-background)", background: "var(--arrowpanel-background)",
"dismiss-button-bg": "var(--arrowpanel-background)",
"dismiss-button-bg-hover":
"color-mix(in srgb, currentColor 14%, var(--arrowpanel-background))",
"dismiss-button-bg-active":
"color-mix(in srgb, currentColor 21%, var(--arrowpanel-background))",
}, },
}, },
}; };

View File

@@ -285,6 +285,9 @@ const MESSAGES = () => {
skip_in_tests: skip_in_tests:
"not tested in automation and might pop up unexpectedly during review checker tests", "not tested in automation and might pop up unexpectedly during review checker tests",
}, },
// Appears the first time a user uses the "save and close" action on a tab group,
// anchored to the alltabs-button. Will only show if at least an hour has passed
// since the CREATE_TAB_GROUP callout showed.
{ {
id: "SAVE_TAB_GROUP_ONBOARDING_CALLOUT", id: "SAVE_TAB_GROUP_ONBOARDING_CALLOUT",
template: "feature_callout", template: "feature_callout",