commit 95f02e9db23d21b006e29e906f3b4f820618d3c4 parent b0713995861498c3e1ebdcad663b005042dd003c Author: scottdowne <sdowne@mozilla.com> Date: Thu, 27 Nov 2025 18:18:21 +0000 Bug 2002077 - Newtab frecency based tile sorting trainhopConfig r=home-newtab-reviewers,ini Differential Revision: https://phabricator.services.mozilla.com/D274147 Diffstat:
| M | browser/extensions/newtab/lib/TopSitesFeed.sys.mjs | | | 15 | +++++++++++---- |
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/browser/extensions/newtab/lib/TopSitesFeed.sys.mjs b/browser/extensions/newtab/lib/TopSitesFeed.sys.mjs @@ -524,7 +524,9 @@ export class ContileIntegration { } sovEnabled() { - return this._topSitesFeed.store.getState().Prefs.values[PREF_SOV_ENABLED]; + const { values } = this._topSitesFeed.store.getState().Prefs; + const trainhopSovEnabled = values?.trainhopConfig?.sov?.enabled; + return trainhopSovEnabled || values[PREF_SOV_ENABLED]; } csvToInts(val) { @@ -560,9 +562,14 @@ export class ContileIntegration { */ generateSov() { const { values } = this._topSitesFeed.store.getState().Prefs; - const name = values[PREF_SOV_NAME]; - const amp = this.csvToInts(values[PREF_SOV_AMP_ALLOCATION]); - const frec = this.csvToInts(values[PREF_SOV_FRECENCY_ALLOCATION]); + const trainhopSovConfig = values?.trainhopConfig?.sov || {}; + const name = trainhopSovConfig.name || values[PREF_SOV_NAME]; + const amp = this.csvToInts( + trainhopSovConfig.amp || values[PREF_SOV_AMP_ALLOCATION] + ); + const frec = this.csvToInts( + trainhopSovConfig.frec || values[PREF_SOV_FRECENCY_ALLOCATION] + ); const allocations = Array.from( { length: DEFAULT_SOV_SLOT_COUNT },