[Pkg-mozext-commits] [tabmixplus] 40/147: Split tablib._loadURIWithFlags function to make it easier to test it
David Prévot
taffit at moszumanska.debian.org
Sat Aug 5 15:27:34 UTC 2017
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository tabmixplus.
commit 1fdffad36de6c006e37debceafe2ac3853c9e8dc
Author: onemen <tabmix.onemen at gmail.com>
Date: Fri Dec 2 08:16:14 2016 +0200
Split tablib._loadURIWithFlags function to make it easier to test it
---
chrome/content/minit/tablib.js | 30 +++++++++++++++++++-----------
1 file changed, 19 insertions(+), 11 deletions(-)
diff --git a/chrome/content/minit/tablib.js b/chrome/content/minit/tablib.js
index 2c09e7b..d445746 100644
--- a/chrome/content/minit/tablib.js
+++ b/chrome/content/minit/tablib.js
@@ -52,6 +52,10 @@ var tablib = { // eslint-disable-line
},
_loadURIWithFlags: function(browser, uri, params) {
+ if (tablib.allowLoad(browser, uri)) {
+ return null;
+ }
+ // redirect load request to a new tab
let flags;
if (!Tabmix.isVersion(380)) {
flags = params;
@@ -64,12 +68,21 @@ var tablib = { // eslint-disable-line
flags = params.flags;
}
+ let isFlagged = flag => Boolean(flags & Ci.nsIWebNavigation[flag]);
+ params.inBackground = false;
+ params.allowThirdPartyFixup = isFlagged("LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP");
+ params.fromExternal = isFlagged("LOAD_FLAGS_FROM_EXTERNAL");
+ params.allowMixedContent = isFlagged("LOAD_FLAGS_ALLOW_MIXED_CONTENT");
+ return gBrowser.loadOneTab(uri, params);
+ },
+
+ allowLoad: function(browser, uri) {
var tab = gBrowser.getTabForBrowser(browser);
if (!tab) {
browser.tabmix_allowLoad = true;
- return null;
+ return true;
}
- var allowLoad = tablib.isException(browser.tabmix_allowLoad !== false ||
+ var allowLoad = this.isException(browser.tabmix_allowLoad !== false ||
uri.match(/^javascript:/));
let allowedUrls = [
@@ -101,16 +114,11 @@ var tablib = { // eslint-disable-line
return gBrowser.isBlankBrowser(browser);
}());
var isLockedTab = tab.hasAttribute("locked");
- if (!allowLoad && !isBlankTab && isLockedTab) {
- let isFlagged = flag => Boolean(flags & Ci.nsIWebNavigation[flag]);
- params.inBackground = false;
- params.allowThirdPartyFixup = isFlagged("LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP");
- params.fromExternal = isFlagged("LOAD_FLAGS_FROM_EXTERNAL");
- params.allowMixedContent = isFlagged("LOAD_FLAGS_ALLOW_MIXED_CONTENT");
- return gBrowser.loadOneTab(uri, params);
+ if (allowLoad || isBlankTab || !isLockedTab) {
+ browser.tabmix_allowLoad = uri == TabmixSvc.aboutBlank || !isLockedTab;
+ return true;
}
- browser.tabmix_allowLoad = uri == TabmixSvc.aboutBlank || !isLockedTab;
- return null;
+ return false;
},
/**
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/tabmixplus.git
More information about the Pkg-mozext-commits
mailing list