summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhackademix2019-02-01 01:16:33 +0100
committerhackademix2019-02-01 01:16:33 +0100
commit20b689d015ea5743099bdafcac0c6ca6519c22db (patch)
tree61e9326ba26205907f3c7381cf13a19169a958f5
parent2fa009673f3d51b14389f8e25075de394290b32c (diff)
downloadnoscript-20b689d015ea5743099bdafcac0c6ca6519c22db.tar.gz
noscript-20b689d015ea5743099bdafcac0c6ca6519c22db.tar.xz
noscript-20b689d015ea5743099bdafcac0c6ca6519c22db.zip
Fallback XSS filtering to XSS Auditor since asynchronous webRequest handlers are not supported by Chromium.
-rw-r--r--src/ui/options.css8
-rw-r--r--src/ui/options.html2
-rw-r--r--src/ui/options.js6
-rw-r--r--src/xss/XSS.js2
4 files changed, 14 insertions, 4 deletions
diff --git a/src/ui/options.css b/src/ui/options.css
index f7db24b..9230eb1 100644
--- a/src/ui/options.css
+++ b/src/ui/options.css
@@ -185,3 +185,11 @@ input[type="file"] {
border-radius: .2em .2em 0 0;
padding: .2em .4em;
}
+
+#xss-opt-group {
+ display: none;
+}
+
+.mozwebext #xss-opt-group {
+ display: block;
+}
diff --git a/src/ui/options.html b/src/ui/options.html
index 4d44d75..5198795 100644
--- a/src/ui/options.html
+++ b/src/ui/options.html
@@ -101,7 +101,7 @@
<h3 class="flextabs__tab"><button class="flextabs__toggle">__MSG_SectionAdvanced__</button></h3>
<div class="flextabs__content">
- <div class="opt-group">
+ <div class="opt-group" id="xss-opt-group">
<span id="xss-opts">
<input type="checkbox" id="opt-xss"><label for="opt-xss" id="lbl-xss">__MSG_OptFilterXGet__</label>
<span id="xssFaq">(<a href="https://noscript.net/faq#xss" title="https://noscript.net/faq#xss">__MSG_XssFaq__</a>)</span>
diff --git a/src/ui/options.js b/src/ui/options.js
index 31cf5c3..a3f7fe8 100644
--- a/src/ui/options.js
+++ b/src/ui/options.js
@@ -8,9 +8,9 @@
let version = browser.runtime.getManifest().version;
document.querySelector("#version").textContent = _("Version", version);
// simple general options
-
+
let opt = UI.wireOption;
-
+
opt("global", o => {
if (o) {
policy.enforced = !o.checked;
@@ -96,7 +96,7 @@
}
let button = document.querySelector("#btn-delete-xss-choices");
let choices = UI.xssUserChoices;
- button.disabled = Object.keys(choices).length === 0;
+ button.disabled = !choices || Object.keys(choices).length === 0;
button.onclick = () => {
UI.updateSettings({
xssUserChoices: {}
diff --git a/src/xss/XSS.js b/src/xss/XSS.js
index f95ea04..7851e98 100644
--- a/src/xss/XSS.js
+++ b/src/xss/XSS.js
@@ -113,6 +113,8 @@ var XSS = (() => {
return {
async start() {
+ if (!UA.isMozilla) return; // async webRequest is supported on Mozilla only
+
let {onBeforeRequest} = browser.webRequest;
if (onBeforeRequest.hasListener(requestListener)) return;