tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 531df4b990989d6ef9b1098c687284148a16f2dd
parent 6fae4e32255543704b47c40de5bddcac8b570ae6
Author: scottdowne <sdowne@mozilla.com>
Date:   Thu,  4 Dec 2025 15:30:47 +0000

Bug 2003894 - Newtab frecency-based sorting ensure dismiss and sponsored content opt out works r=home-newtab-reviewers,nbarrett

Differential Revision: https://phabricator.services.mozilla.com/D275027

Diffstat:
Mbrowser/extensions/newtab/lib/TelemetryFeed.sys.mjs | 2+-
Mbrowser/extensions/newtab/lib/TopSitesFeed.sys.mjs | 8++++++--
2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/browser/extensions/newtab/lib/TelemetryFeed.sys.mjs b/browser/extensions/newtab/lib/TelemetryFeed.sys.mjs @@ -1921,7 +1921,7 @@ export class TelemetryFeed { if (action.source === "TOP_SITES") { const { position, advertiser_name, tile_id, isSponsoredTopSite } = datum; - if (this.sovEnabled()) { + if (this.sovEnabled() && isSponsoredTopSite) { if (this.privatePingEnabled) { this.newtabContentPing.recordEvent("topSitesDismiss", { advertiser_name, diff --git a/browser/extensions/newtab/lib/TopSitesFeed.sys.mjs b/browser/extensions/newtab/lib/TopSitesFeed.sys.mjs @@ -1377,7 +1377,7 @@ export class TopSitesFeed { const url = `https://${domainObj.domain}/`; const page = pagesMap.get(url); - if (!page) { + if (!page || lazy.NewTabUtils.blockedLinks.isBlocked({ url })) { continue; } @@ -1409,7 +1409,11 @@ export class TopSitesFeed { * @returns {Array} An array of sponsored tile objects. */ async fetchFrecencyBoostedSpocs() { - if (!this._contile.sovEnabled() || !this._linksWithDefaults?.length) { + if ( + !this._contile.sovEnabled() || + !this._linksWithDefaults?.length || + !this.store.getState().Prefs.values[SHOW_SPONSORED_PREF] + ) { return []; }