diff --git a/src/zen/sessionstore/ZenWindowSync.sys.mjs b/src/zen/sessionstore/ZenWindowSync.sys.mjs index b2c86dc6e..cb6c2094a 100644 --- a/src/zen/sessionstore/ZenWindowSync.sys.mjs +++ b/src/zen/sessionstore/ZenWindowSync.sys.mjs @@ -15,6 +15,7 @@ ChromeUtils.defineESModuleGetters(lazy, { ZenSessionStore: "resource:///modules/zen/ZenSessionManager.sys.mjs", TabStateCache: "resource:///modules/sessionstore/TabStateCache.sys.mjs", setTimeout: "resource://gre/modules/Timer.sys.mjs", + PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.sys.mjs", }); XPCOMUtils.defineLazyPreferenceGetter(lazy, "gWindowSyncEnabled", "zen.window-sync.enabled", true); @@ -189,6 +190,10 @@ class nsZenWindowSync { // to avoid confusing the old private window behavior. let forcedSync = !aWindow.gZenWorkspaces?.privateWindowOrDisabled; let hasUnsyncedArg = false; + // See issue https://github.com/zen-browser/desktop/issues/12211 + if (lazy.PrivateBrowsingUtils.isWindowPrivate(aWindow)) { + aWindow._zenStartupSyncFlag = "synced"; + } if (aWindow._zenStartupSyncFlag === "synced") { forcedSync = true; } else if (aWindow._zenStartupSyncFlag === "unsynced") {