From a2fd890ab548e7f0251510268e72d5841628f4d7 Mon Sep 17 00:00:00 2001 From: Infocatcher Date: Tue, 27 Dec 2016 15:05:54 +0300 Subject: [PATCH] Correctly open new private tab with preloaded about:newtab in Firefox 52+ Thanks to Dumby: https://forum.mozilla-russia.org/viewtopic.php?pid=728403#p728403 --- bootstrap.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/bootstrap.js b/bootstrap.js index 2bc05e5..873041e 100644 --- a/bootstrap.js +++ b/bootstrap.js @@ -4069,6 +4069,19 @@ var privateTab = { return { value: isPrivate }; } var stack = new Error().stack; + _dbgv && _log(key + "():\n" + stack); + + if( + ( + stack.indexOf("\nprivateTab.openNewPrivateTab@") != -1 // Firefox 52 + || stack.indexOf("\nopenNewPrivateTab@") != -1 // Firefox 53 + ) + && stack.indexOf("\n_linkBrowserToTab@chrome://browser/content/tabbrowser.xml:") != -1 + ) { + _log(key + "(): looks like privateTab.openNewPrivateTab() + preloaded about:newtab, override to true"); + return { value: true }; + } + var fromSearchBar = stack.indexOf("@chrome://browser/content/search/search.xml:") != -1 || stack.indexOf("\ndoSearch@chrome://tabmixplus/content/changecode.js:") != -1; var fromDownloads = !fromSearchBar && prefs.get("patchDownloads") @@ -4078,7 +4091,6 @@ var privateTab = { stack.indexOf("\nTrackingProtection.enabled@chrome://browser/content/browser.js:") != -1 || stack.indexOf("@chrome://browser/content/browser-trackingprotection.js:") != -1 // Firefox 45+ ); - _dbgv && _log(key + "():\n" + stack); if(fromSearchBar || fromDownloads || fromTrackingProtection) try { var isPrivate = _this.isPrivateContent(window); _dbgv && _log(key + "(): return state of selected tab: " + isPrivate);