Bug 1940476 - Add triggers for "Tab group created" and "Tab group closed" events; and targeting for counting tab groups r=dao,omc-reviewers,aminomancer

Differential Revision: https://phabricator.services.mozilla.com/D233953
This commit is contained in:
Emily McMinn
2025-01-16 19:28:08 +00:00
parent 6ff5f31448
commit 418d1decfb
5 changed files with 173 additions and 1 deletions

View File

@@ -53,6 +53,7 @@ ChromeUtils.defineESModuleGetters(lazy, {
// eslint-disable-next-line mozilla/no-browser-refs-in-toolkit
SelectableProfileService:
"resource:///modules/profiles/SelectableProfileService.sys.mjs",
SessionStore: "resource:///modules/sessionstore/SessionStore.sys.mjs",
TargetingContext: "resource://messaging-system/targeting/Targeting.sys.mjs",
TelemetryEnvironment: "resource://gre/modules/TelemetryEnvironment.sys.mjs",
TelemetrySession: "resource://gre/modules/TelemetrySession.sys.mjs",
@@ -748,6 +749,15 @@ const TargetingGetters = {
get needsUpdate() {
return QueryCache.queries.CheckBrowserNeedsUpdate.get();
},
get savedTabGroups() {
return lazy.SessionStore.getSavedTabGroups().length;
},
get currentTabGroups() {
let totalTabGroups =
lazy.BrowserWindowTracker.getTopWindow().gBrowser.getAllTabGroups()
.length;
return totalTabGroups;
},
get hasPinnedTabs() {
for (let win of Services.wm.getEnumerator("navigator:browser")) {
if (win.closed || !win.ownerGlobal.gBrowser) {