diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js index e19bcba7365e..13b66f148cd3 100644 --- a/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js @@ -1804,6 +1804,9 @@ pref("browser.newtabpage.activity-stream.mobileDownloadModal.variant-a", false); pref("browser.newtabpage.activity-stream.mobileDownloadModal.variant-b", false); pref("browser.newtabpage.activity-stream.mobileDownloadModal.variant-c", false); +// Show refined card layout on newtab +pref("browser.newtabpage.activity-stream.discoverystream.refinedCardsLayout.enabled", false) + // Mozilla Ad Routing Service (MARS) unified ads service pref("browser.newtabpage.activity-stream.unifiedAds.tiles.enabled", true); pref("browser.newtabpage.activity-stream.unifiedAds.spocs.enabled", true); diff --git a/browser/extensions/newtab/content-src/components/Base/Base.jsx b/browser/extensions/newtab/content-src/components/Base/Base.jsx index 6f6868eee86d..22be54b0ce34 100644 --- a/browser/extensions/newtab/content-src/components/Base/Base.jsx +++ b/browser/extensions/newtab/content-src/components/Base/Base.jsx @@ -675,6 +675,7 @@ export class BaseContent extends React.PureComponent { prefs["discoverystream.sections.customizeMenuPanel.enabled"]; const sectionsPersonalizationEnabled = prefs["discoverystream.sections.personalization.enabled"]; + // Logic to show follow/block topic mgmt panel in Customize panel const mayHavePersonalizedTopicSections = sectionsPersonalizationEnabled && diff --git a/browser/extensions/newtab/content-src/components/DiscoveryStreamComponents/DSCard/DSCard.jsx b/browser/extensions/newtab/content-src/components/DiscoveryStreamComponents/DSCard/DSCard.jsx index c99d098a4412..db3cadb21013 100644 --- a/browser/extensions/newtab/content-src/components/DiscoveryStreamComponents/DSCard/DSCard.jsx +++ b/browser/extensions/newtab/content-src/components/DiscoveryStreamComponents/DSCard/DSCard.jsx @@ -711,6 +711,7 @@ export class _DSCard extends React.PureComponent { const layoutsVariantAEnabled = Prefs.values["newtabLayouts.variant-a"]; const layoutsVariantBEnabled = Prefs.values["newtabLayouts.variant-b"]; const sectionsEnabled = Prefs.values["discoverystream.sections.enabled"]; + const refinedCardsLayout = "discoverystream.refinedCardsLayout.enabled"; const layoutsVariantAorB = layoutsVariantAEnabled || layoutsVariantBEnabled; const smartCrop = Prefs.values["images.smart"]; @@ -749,6 +750,7 @@ export class _DSCard extends React.PureComponent { const descLinesClassName = `ds-card-desc-lines-${descLines}`; const isMediumRectangle = format === "rectangle"; const spocFormatClassName = isMediumRectangle ? `ds-spoc-rectangle` : ``; + const refinedCardsClassName = refinedCardsLayout ? `refined-cards` : ``; let sizes = []; if (!isMediumRectangle) { @@ -770,7 +772,7 @@ export class _DSCard extends React.PureComponent { return (
- Enables using OHTTP for unified ads API requests +newtabRefinedCardsLayout: + description: Enable layout and styling refinements for content and ad cards across different card sizes + owner: rhamoui@mozilla.com + hasExposure: false + variables: + enabled: + type: boolean + setPref: + branch: user + pref: browser.newtabpage.activity-stream.discoverystream.refinedCardsLayout.enabled + description: Enables the refined cards layout for newtab + + pocketNewtab: description: The Pocket section in newtab owner: sdowne@mozilla.com