Bug 1943078 - Newtab updates to spacing and sizing of shortcuts. r=home-newtab-reviewers,amy
Differential Revision: https://phabricator.services.mozilla.com/D235230
This commit is contained in:
@@ -1840,12 +1840,15 @@ pref("browser.newtabpage.activity-stream.newtabWallpapers.highlightHeaderText",
|
|||||||
pref("browser.newtabpage.activity-stream.newtabWallpapers.highlightContentText", "");
|
pref("browser.newtabpage.activity-stream.newtabWallpapers.highlightContentText", "");
|
||||||
pref("browser.newtabpage.activity-stream.newtabWallpapers.highlightCtaText", "");
|
pref("browser.newtabpage.activity-stream.newtabWallpapers.highlightCtaText", "");
|
||||||
|
|
||||||
pref("browser.newtabpage.activity-stream.newNewtabExperience.colors", "#0090ED,#FF4F5F,#2AC3A2,#FF7139,#A172FF,#FFA437,#FF2A8A");
|
pref("browser.newtabpage.activity-stream.newNewtabExperience.colors", "#004CA4,#009E97,#7550C2,#B63B39,#C96A00,#CA9600,#CC527F");
|
||||||
|
|
||||||
// Default layout experimentation
|
// Default layout experimentation
|
||||||
pref("browser.newtabpage.activity-stream.newtabLayouts.variant-a", false);
|
pref("browser.newtabpage.activity-stream.newtabLayouts.variant-a", false);
|
||||||
pref("browser.newtabpage.activity-stream.newtabLayouts.variant-b", true);
|
pref("browser.newtabpage.activity-stream.newtabLayouts.variant-b", true);
|
||||||
|
|
||||||
|
// Shortcuts experiment
|
||||||
|
pref("browser.newtabpage.activity-stream.newtabShortcuts.refresh", false);
|
||||||
|
|
||||||
// Discovery stream ad size experiment
|
// Discovery stream ad size experiment
|
||||||
pref("browser.newtabpage.activity-stream.newtabAdSize.variant-a", false);
|
pref("browser.newtabpage.activity-stream.newtabAdSize.variant-a", false);
|
||||||
pref("browser.newtabpage.activity-stream.newtabAdSize.variant-b", false);
|
pref("browser.newtabpage.activity-stream.newtabAdSize.variant-b", false);
|
||||||
|
|||||||
@@ -574,6 +574,7 @@ export class BaseContent extends React.PureComponent {
|
|||||||
|
|
||||||
const layoutsVariantAEnabled = prefs["newtabLayouts.variant-a"];
|
const layoutsVariantAEnabled = prefs["newtabLayouts.variant-a"];
|
||||||
const layoutsVariantBEnabled = prefs["newtabLayouts.variant-b"];
|
const layoutsVariantBEnabled = prefs["newtabLayouts.variant-b"];
|
||||||
|
const shortcutsRefresh = prefs["newtabShortcuts.refresh"];
|
||||||
const layoutsVariantAorB = layoutsVariantAEnabled || layoutsVariantBEnabled;
|
const layoutsVariantAorB = layoutsVariantAEnabled || layoutsVariantBEnabled;
|
||||||
|
|
||||||
const activeWallpaper =
|
const activeWallpaper =
|
||||||
@@ -644,6 +645,7 @@ export class BaseContent extends React.PureComponent {
|
|||||||
prefs.showSearch ? "has-search" : "no-search",
|
prefs.showSearch ? "has-search" : "no-search",
|
||||||
layoutsVariantAEnabled ? "layout-variant-a" : "", // Layout experiment variant A
|
layoutsVariantAEnabled ? "layout-variant-a" : "", // Layout experiment variant A
|
||||||
layoutsVariantBEnabled ? "layout-variant-b" : "", // Layout experiment variant B
|
layoutsVariantBEnabled ? "layout-variant-b" : "", // Layout experiment variant B
|
||||||
|
shortcutsRefresh ? "shortcuts-refresh" : "", // Shortcuts refresh experiment
|
||||||
pocketEnabled ? "has-recommended-stories" : "no-recommended-stories",
|
pocketEnabled ? "has-recommended-stories" : "no-recommended-stories",
|
||||||
sectionsEnabled ? "has-sections-grid" : "",
|
sectionsEnabled ? "has-sections-grid" : "",
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -150,5 +150,9 @@
|
|||||||
.layout-variant-b & {
|
.layout-variant-b & {
|
||||||
margin-block-end: var(--space-medium);
|
margin-block-end: var(--space-medium);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh & {
|
||||||
|
margin-block-end: 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -161,6 +161,12 @@ $glyph-forward: url('chrome://browser/skin/forward.svg');
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh.has-recommended-stories {
|
||||||
|
.outer-wrapper:not(.fixed-search) .search-wrapper {
|
||||||
|
margin-block-end: 28px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.layout-variant-b.has-recommended-stories {
|
.layout-variant-b.has-recommended-stories {
|
||||||
.outer-wrapper:not(.fixed-search) .search-wrapper {
|
.outer-wrapper:not(.fixed-search) .search-wrapper {
|
||||||
margin-block-start: 16px;
|
margin-block-start: 16px;
|
||||||
|
|||||||
@@ -258,7 +258,9 @@ export class TopSiteLink extends React.PureComponent {
|
|||||||
onClick,
|
onClick,
|
||||||
title,
|
title,
|
||||||
isAddButton,
|
isAddButton,
|
||||||
|
shortcutsRefresh,
|
||||||
} = this.props;
|
} = this.props;
|
||||||
|
|
||||||
const topSiteOuterClassName = `top-site-outer${
|
const topSiteOuterClassName = `top-site-outer${
|
||||||
className ? ` ${className}` : ""
|
className ? ` ${className}` : ""
|
||||||
}${link.isDragged ? " dragged" : ""}${
|
}${link.isDragged ? " dragged" : ""}${
|
||||||
@@ -381,7 +383,10 @@ export class TopSiteLink extends React.PureComponent {
|
|||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
{link.searchTopSite && (
|
{shortcutsRefresh && link.isPinned && (
|
||||||
|
<div className="icon icon-pin-small" />
|
||||||
|
)}
|
||||||
|
{!shortcutsRefresh && link.searchTopSite && (
|
||||||
<div className="top-site-icon search-topsite" />
|
<div className="top-site-icon search-topsite" />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@@ -397,7 +402,12 @@ export class TopSiteLink extends React.PureComponent {
|
|||||||
dir="auto"
|
dir="auto"
|
||||||
{...(isAddButton && { ...addButtonl10n })}
|
{...(isAddButton && { ...addButtonl10n })}
|
||||||
>
|
>
|
||||||
{link.isPinned && <div className="icon icon-pin-small" />}
|
{!shortcutsRefresh && link.isPinned && (
|
||||||
|
<div className="icon icon-pin-small" />
|
||||||
|
)}
|
||||||
|
{shortcutsRefresh && link.searchTopSite && (
|
||||||
|
<div className="top-site-icon search-topsite" />
|
||||||
|
)}
|
||||||
{title || <br />}
|
{title || <br />}
|
||||||
</span>
|
</span>
|
||||||
<span
|
<span
|
||||||
@@ -852,6 +862,8 @@ export class _TopSiteList extends React.PureComponent {
|
|||||||
|
|
||||||
render() {
|
render() {
|
||||||
const { props } = this;
|
const { props } = this;
|
||||||
|
const prefs = props.Prefs.values;
|
||||||
|
const shortcutsRefresh = prefs["newtabShortcuts.refresh"];
|
||||||
const topSites = this.state.topSitesPreview || this._getTopSites();
|
const topSites = this.state.topSitesPreview || this._getTopSites();
|
||||||
const topSitesUI = [];
|
const topSitesUI = [];
|
||||||
const commonProps = {
|
const commonProps = {
|
||||||
@@ -909,6 +921,7 @@ export class _TopSiteList extends React.PureComponent {
|
|||||||
{...slotProps}
|
{...slotProps}
|
||||||
{...commonProps}
|
{...commonProps}
|
||||||
colors={props.colors}
|
colors={props.colors}
|
||||||
|
shortcutsRefresh={shortcutsRefresh}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -931,4 +944,5 @@ export class _TopSiteList extends React.PureComponent {
|
|||||||
|
|
||||||
export const TopSiteList = connect(state => ({
|
export const TopSiteList = connect(state => ({
|
||||||
App: state.App,
|
App: state.App,
|
||||||
|
Prefs: state.Prefs,
|
||||||
}))(_TopSiteList);
|
}))(_TopSiteList);
|
||||||
|
|||||||
@@ -40,6 +40,10 @@ $calculated-max-width-twice-widest: $break-point-widest + 2 * $card-width;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh & {
|
||||||
|
row-gap: var(--space-small);
|
||||||
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
@@ -396,6 +400,106 @@ $calculated-max-width-twice-widest: $break-point-widest + 2 * $card-width;
|
|||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh & {
|
||||||
|
width: 120px;
|
||||||
|
margin-block-end: 0;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: var(--newtab-background-card);
|
||||||
|
|
||||||
|
.context-menu-button {
|
||||||
|
// The normal position for the context menu button is outside of the container,
|
||||||
|
// and thus has the wallpaper-contrast-fix mixin.
|
||||||
|
// We need to revert that because we're moving it into the shortcut's container.
|
||||||
|
color-scheme: initial;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.top-site-button {
|
||||||
|
padding: 12px 16px 6px;
|
||||||
|
|
||||||
|
&:focus + div .context-menu-button {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.tile {
|
||||||
|
background: var(--newtab-background-card);
|
||||||
|
border-radius: var(--border-radius-large);
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: var(--newtab-background-color-secondary);
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-wrapper {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.top-site-icon {
|
||||||
|
// Remove the white background colors on icons,
|
||||||
|
// fully rely on the icon itself to make the decision on the background.
|
||||||
|
background-color: transparent;
|
||||||
|
border-radius: var(--border-radius-medium);
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-wrapper.letter-fallback {
|
||||||
|
border-radius: var(--border-radius-circle);
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
transform: none;
|
||||||
|
position: static;
|
||||||
|
font-size: var(--font-size-xlarge);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
.search-topsite {
|
||||||
|
margin-inline-end: 2px;
|
||||||
|
fill: currentColor;
|
||||||
|
background-size: 12px;
|
||||||
|
height: 12px;
|
||||||
|
width: 12px;
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-color: transparent;
|
||||||
|
position: static;
|
||||||
|
display: inline-block;
|
||||||
|
color: var(--icon-color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.context-menu-button {
|
||||||
|
inset-inline-end: 0;
|
||||||
|
inset-block-start: 12px;
|
||||||
|
height: 24px;
|
||||||
|
width: 24px;
|
||||||
|
background-color: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
.context-menu {
|
||||||
|
inset-block-start: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-pin-small {
|
||||||
|
// The icon's colour is based on currentColor, which is a ligh/dark colour.
|
||||||
|
// We don't want it to change based on the wallpaper-contrast-fix mixin,
|
||||||
|
// as it's inside the topsite container now.
|
||||||
|
color-scheme: initial;
|
||||||
|
position: absolute;
|
||||||
|
inset-block-start: var(--space-xsmall);
|
||||||
|
inset-inline-start: var(--space-xsmall);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh {
|
||||||
|
.discovery-stream.ds-layout.ds-layout-topsites {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.edit-topsites-wrapper {
|
.edit-topsites-wrapper {
|
||||||
|
|||||||
@@ -787,6 +787,9 @@ main section {
|
|||||||
grid-template-columns: repeat(8, 1fr);
|
grid-template-columns: repeat(8, 1fr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.shortcuts-refresh .top-sites-list {
|
||||||
|
row-gap: var(--space-small);
|
||||||
|
}
|
||||||
.top-sites-list a {
|
.top-sites-list a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
@@ -1089,6 +1092,79 @@ main section {
|
|||||||
.top-site-outer.dragged .title {
|
.top-site-outer.dragged .title {
|
||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
}
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer {
|
||||||
|
width: 120px;
|
||||||
|
margin-block-end: 0;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer:hover {
|
||||||
|
background: var(--newtab-background-card);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer:hover .context-menu-button {
|
||||||
|
color-scheme: initial;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .top-site-button {
|
||||||
|
padding: 12px 16px 6px;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .top-site-button:focus + div .context-menu-button {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .tile {
|
||||||
|
background: var(--newtab-background-card);
|
||||||
|
border-radius: var(--border-radius-large);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .tile:hover {
|
||||||
|
background-color: var(--newtab-background-color-secondary);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .tile .icon-wrapper {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .tile .top-site-icon {
|
||||||
|
background-color: transparent;
|
||||||
|
border-radius: var(--border-radius-medium);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .tile .icon-wrapper.letter-fallback {
|
||||||
|
border-radius: var(--border-radius-circle);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .tile .icon-wrapper.letter-fallback::before {
|
||||||
|
transform: none;
|
||||||
|
position: static;
|
||||||
|
font-size: var(--font-size-xlarge);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .title .search-topsite {
|
||||||
|
margin-inline-end: 2px;
|
||||||
|
fill: currentColor;
|
||||||
|
background-size: 12px;
|
||||||
|
height: 12px;
|
||||||
|
width: 12px;
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-color: transparent;
|
||||||
|
position: static;
|
||||||
|
display: inline-block;
|
||||||
|
color: var(--icon-color);
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .context-menu-button {
|
||||||
|
inset-inline-end: 0;
|
||||||
|
inset-block-start: 12px;
|
||||||
|
height: 24px;
|
||||||
|
width: 24px;
|
||||||
|
background-color: unset;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .context-menu {
|
||||||
|
inset-block-start: 40px;
|
||||||
|
}
|
||||||
|
.shortcuts-refresh .top-site-outer .icon-pin-small {
|
||||||
|
color-scheme: initial;
|
||||||
|
position: absolute;
|
||||||
|
inset-block-start: var(--space-xsmall);
|
||||||
|
inset-inline-start: var(--space-xsmall);
|
||||||
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh .discovery-stream.ds-layout.ds-layout-topsites {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
.edit-topsites-wrapper .top-site-inner > .top-site-button > .tile {
|
.edit-topsites-wrapper .top-site-inner > .top-site-button > .tile {
|
||||||
border: 1px solid var(--newtab-border-color);
|
border: 1px solid var(--newtab-border-color);
|
||||||
@@ -1615,6 +1691,10 @@ main section {
|
|||||||
fill: var(--newtab-wordmark-color);
|
fill: var(--newtab-wordmark-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.shortcuts-refresh.has-recommended-stories .outer-wrapper:not(.fixed-search) .search-wrapper {
|
||||||
|
margin-block-end: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
.layout-variant-b.has-recommended-stories .outer-wrapper:not(.fixed-search) .search-wrapper {
|
.layout-variant-b.has-recommended-stories .outer-wrapper:not(.fixed-search) .search-wrapper {
|
||||||
margin-block-start: 16px;
|
margin-block-start: 16px;
|
||||||
}
|
}
|
||||||
@@ -6829,6 +6909,9 @@ main section {
|
|||||||
.thumbs-ui-compact .top-site-outer .layout-variant-a, .layout-variant-b .thumbs-ui-compact .top-site-outer {
|
.thumbs-ui-compact .top-site-outer .layout-variant-a, .layout-variant-b .thumbs-ui-compact .top-site-outer {
|
||||||
margin-block-end: var(--space-medium);
|
margin-block-end: var(--space-medium);
|
||||||
}
|
}
|
||||||
|
.shortcuts-refresh .thumbs-ui-compact .top-site-outer {
|
||||||
|
margin-block-end: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.ds-signup {
|
.ds-signup {
|
||||||
max-width: 300px;
|
max-width: 300px;
|
||||||
|
|||||||
@@ -8006,7 +8006,8 @@ class TopSiteLink extends (external_React_default()).PureComponent {
|
|||||||
link,
|
link,
|
||||||
onClick,
|
onClick,
|
||||||
title,
|
title,
|
||||||
isAddButton
|
isAddButton,
|
||||||
|
shortcutsRefresh
|
||||||
} = this.props;
|
} = this.props;
|
||||||
const topSiteOuterClassName = `top-site-outer${className ? ` ${className}` : ""}${link.isDragged ? " dragged" : ""}${link.searchTopSite ? " search-shortcut" : ""}`;
|
const topSiteOuterClassName = `top-site-outer${className ? ` ${className}` : ""}${link.isDragged ? " dragged" : ""}${link.searchTopSite ? " search-shortcut" : ""}`;
|
||||||
const [letterFallback] = title;
|
const [letterFallback] = title;
|
||||||
@@ -8108,7 +8109,9 @@ class TopSiteLink extends (external_React_default()).PureComponent {
|
|||||||
className: "top-site-icon default-icon",
|
className: "top-site-icon default-icon",
|
||||||
"data-fallback": smallFaviconStyle ? "" : letterFallback,
|
"data-fallback": smallFaviconStyle ? "" : letterFallback,
|
||||||
style: smallFaviconStyle
|
style: smallFaviconStyle
|
||||||
})), link.searchTopSite && /*#__PURE__*/external_React_default().createElement("div", {
|
})), shortcutsRefresh && link.isPinned && /*#__PURE__*/external_React_default().createElement("div", {
|
||||||
|
className: "icon icon-pin-small"
|
||||||
|
}), !shortcutsRefresh && link.searchTopSite && /*#__PURE__*/external_React_default().createElement("div", {
|
||||||
className: "top-site-icon search-topsite"
|
className: "top-site-icon search-topsite"
|
||||||
})), /*#__PURE__*/external_React_default().createElement("div", {
|
})), /*#__PURE__*/external_React_default().createElement("div", {
|
||||||
className: `title${link.isPinned ? " has-icon pinned" : ""}${link.type === SPOC_TYPE || link.show_sponsored_label ? " sponsored" : ""}`
|
className: `title${link.isPinned ? " has-icon pinned" : ""}${link.type === SPOC_TYPE || link.show_sponsored_label ? " sponsored" : ""}`
|
||||||
@@ -8117,8 +8120,10 @@ class TopSiteLink extends (external_React_default()).PureComponent {
|
|||||||
dir: "auto"
|
dir: "auto"
|
||||||
}, isAddButton && {
|
}, isAddButton && {
|
||||||
...addButtonl10n
|
...addButtonl10n
|
||||||
}), link.isPinned && /*#__PURE__*/external_React_default().createElement("div", {
|
}), !shortcutsRefresh && link.isPinned && /*#__PURE__*/external_React_default().createElement("div", {
|
||||||
className: "icon icon-pin-small"
|
className: "icon icon-pin-small"
|
||||||
|
}), shortcutsRefresh && link.searchTopSite && /*#__PURE__*/external_React_default().createElement("div", {
|
||||||
|
className: "top-site-icon search-topsite"
|
||||||
}), title || /*#__PURE__*/external_React_default().createElement("br", null)), /*#__PURE__*/external_React_default().createElement("span", {
|
}), title || /*#__PURE__*/external_React_default().createElement("br", null)), /*#__PURE__*/external_React_default().createElement("span", {
|
||||||
className: "sponsored-label",
|
className: "sponsored-label",
|
||||||
"data-l10n-id": "newtab-topsite-sponsored"
|
"data-l10n-id": "newtab-topsite-sponsored"
|
||||||
@@ -8519,6 +8524,8 @@ class _TopSiteList extends (external_React_default()).PureComponent {
|
|||||||
const {
|
const {
|
||||||
props
|
props
|
||||||
} = this;
|
} = this;
|
||||||
|
const prefs = props.Prefs.values;
|
||||||
|
const shortcutsRefresh = prefs["newtabShortcuts.refresh"];
|
||||||
const topSites = this.state.topSitesPreview || this._getTopSites();
|
const topSites = this.state.topSitesPreview || this._getTopSites();
|
||||||
const topSitesUI = [];
|
const topSitesUI = [];
|
||||||
const commonProps = {
|
const commonProps = {
|
||||||
@@ -8560,7 +8567,8 @@ class _TopSiteList extends (external_React_default()).PureComponent {
|
|||||||
activeIndex: this.state.activeIndex,
|
activeIndex: this.state.activeIndex,
|
||||||
onActivate: this.onActivate
|
onActivate: this.onActivate
|
||||||
}, slotProps, commonProps, {
|
}, slotProps, commonProps, {
|
||||||
colors: props.colors
|
colors: props.colors,
|
||||||
|
shortcutsRefresh: shortcutsRefresh
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
topSitesUI.push(topSiteLink);
|
topSitesUI.push(topSiteLink);
|
||||||
@@ -8573,7 +8581,8 @@ class _TopSiteList extends (external_React_default()).PureComponent {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
const TopSiteList = (0,external_ReactRedux_namespaceObject.connect)(state => ({
|
const TopSiteList = (0,external_ReactRedux_namespaceObject.connect)(state => ({
|
||||||
App: state.App
|
App: state.App,
|
||||||
|
Prefs: state.Prefs
|
||||||
}))(_TopSiteList);
|
}))(_TopSiteList);
|
||||||
;// CONCATENATED MODULE: ./content-src/components/TopSites/TopSiteForm.jsx
|
;// CONCATENATED MODULE: ./content-src/components/TopSites/TopSiteForm.jsx
|
||||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||||
@@ -13097,6 +13106,7 @@ class BaseContent extends (external_React_default()).PureComponent {
|
|||||||
const prefs = props.Prefs.values;
|
const prefs = props.Prefs.values;
|
||||||
const layoutsVariantAEnabled = prefs["newtabLayouts.variant-a"];
|
const layoutsVariantAEnabled = prefs["newtabLayouts.variant-a"];
|
||||||
const layoutsVariantBEnabled = prefs["newtabLayouts.variant-b"];
|
const layoutsVariantBEnabled = prefs["newtabLayouts.variant-b"];
|
||||||
|
const shortcutsRefresh = prefs["newtabShortcuts.refresh"];
|
||||||
const layoutsVariantAorB = layoutsVariantAEnabled || layoutsVariantBEnabled;
|
const layoutsVariantAorB = layoutsVariantAEnabled || layoutsVariantBEnabled;
|
||||||
const activeWallpaper = prefs[`newtabWallpapers.wallpaper-${this.state.colorMode}`];
|
const activeWallpaper = prefs[`newtabWallpapers.wallpaper-${this.state.colorMode}`];
|
||||||
const wallpapersEnabled = prefs["newtabWallpapers.enabled"];
|
const wallpapersEnabled = prefs["newtabWallpapers.enabled"];
|
||||||
@@ -13148,6 +13158,8 @@ class BaseContent extends (external_React_default()).PureComponent {
|
|||||||
// Layout experiment variant A
|
// Layout experiment variant A
|
||||||
layoutsVariantBEnabled ? "layout-variant-b" : "",
|
layoutsVariantBEnabled ? "layout-variant-b" : "",
|
||||||
// Layout experiment variant B
|
// Layout experiment variant B
|
||||||
|
shortcutsRefresh ? "shortcuts-refresh" : "",
|
||||||
|
// Shortcuts refresh experiment
|
||||||
pocketEnabled ? "has-recommended-stories" : "no-recommended-stories", sectionsEnabled ? "has-sections-grid" : ""].filter(v => v).join(" ");
|
pocketEnabled ? "has-recommended-stories" : "no-recommended-stories", sectionsEnabled ? "has-sections-grid" : ""].filter(v => v).join(" ");
|
||||||
const outerClassName = ["outer-wrapper", isDiscoveryStream && pocketEnabled && "ds-outer-wrapper-search-alignment", isDiscoveryStream && "ds-outer-wrapper-breakpoint-override", prefs.showSearch && this.state.fixedSearch && !noSectionsEnabled && "fixed-search", prefs.showSearch && noSectionsEnabled && "only-search", prefs["feeds.topsites"] && !pocketEnabled && !prefs.showSearch && "only-topsites", noSectionsEnabled && "no-sections", prefs["logowordmark.alwaysVisible"] && "visible-logo", hasThumbsUpDownLayout && hasThumbsUpDown && "thumbs-ui-compact"].filter(v => v).join(" ");
|
const outerClassName = ["outer-wrapper", isDiscoveryStream && pocketEnabled && "ds-outer-wrapper-search-alignment", isDiscoveryStream && "ds-outer-wrapper-breakpoint-override", prefs.showSearch && this.state.fixedSearch && !noSectionsEnabled && "fixed-search", prefs.showSearch && noSectionsEnabled && "only-search", prefs["feeds.topsites"] && !pocketEnabled && !prefs.showSearch && "only-topsites", noSectionsEnabled && "no-sections", prefs["logowordmark.alwaysVisible"] && "visible-logo", hasThumbsUpDownLayout && hasThumbsUpDown && "thumbs-ui-compact"].filter(v => v).join(" ");
|
||||||
if (wallpapersEnabled || wallpapersV2Enabled) {
|
if (wallpapersEnabled || wallpapersV2Enabled) {
|
||||||
|
|||||||
@@ -505,6 +505,13 @@ export const PREFS_CONFIG = new Map([
|
|||||||
value: false,
|
value: false,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
"newtabShortcuts.refresh",
|
||||||
|
{
|
||||||
|
title: "Boolean flag to change sizes and spacing of new tab shortcuts",
|
||||||
|
value: false,
|
||||||
|
},
|
||||||
|
],
|
||||||
[
|
[
|
||||||
"discoverystream.sections.enabled",
|
"discoverystream.sections.enabled",
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -940,6 +940,20 @@ newtabLayoutExperiment:
|
|||||||
description: >-
|
description: >-
|
||||||
Variant B in layouts experiment.
|
Variant B in layouts experiment.
|
||||||
|
|
||||||
|
newtabShortcutsExperiment:
|
||||||
|
description: >-
|
||||||
|
Adjusting sizes and spacing of new tab shortcuts.
|
||||||
|
owner: sdowne@mozilla.com
|
||||||
|
hasExposure: false
|
||||||
|
variables:
|
||||||
|
refresh:
|
||||||
|
type: boolean
|
||||||
|
setPref:
|
||||||
|
branch: user
|
||||||
|
pref: browser.newtabpage.activity-stream.newtabShortcuts.refresh
|
||||||
|
description: >-
|
||||||
|
Adjusting sizes and spacing of new tab shortcuts.
|
||||||
|
|
||||||
newtabSponsoredContent:
|
newtabSponsoredContent:
|
||||||
description: >-
|
description: >-
|
||||||
Change and control the sponsored content on newtab.
|
Change and control the sponsored content on newtab.
|
||||||
|
|||||||
Reference in New Issue
Block a user