about summary refs log tree commit diff stats
path: root/pages/options
diff options
context:
space:
mode:
Diffstat (limited to 'pages/options')
-rw-r--r--pages/options/options.html9
-rw-r--r--pages/options/options.js9
2 files changed, 17 insertions, 1 deletions
diff --git a/pages/options/options.html b/pages/options/options.html
index b7e273f9..0a963b79 100644
--- a/pages/options/options.html
+++ b/pages/options/options.html
@@ -111,6 +111,15 @@
     </select>
   </section>
 
+  <section class="options settings_block">
+    <div class="onoffswitch switch" aria-label="Proactively remove Twitter service worker">
+      <h1>Proactively remove Twitter service worker</h1>
+      <input aria-hidden="true" id="remove-twitter-sw" type="checkbox" checked>&nbsp;
+      <label for="remove-twitter-sw" class="checkbox-label">
+      </label>
+    </div>
+  </section>
+
   <script src="./options.js"></script>
 
 </body>
diff --git a/pages/options/options.js b/pages/options/options.js
index 4a1c198c..3b850384 100644
--- a/pages/options/options.js
+++ b/pages/options/options.js
@@ -11,6 +11,7 @@ let disableOsm = document.querySelector('#disable-osm');
 let alwaysProxy = document.querySelector('#always-proxy');
 let onlyEmbeddedVideo = document.querySelector('#only-embed');
 let videoQuality = document.querySelector('#video-quality');
+let removeTwitterSW = document.querySelector('#remove-twitter-sw');
 
 window.browser = window.browser || window.chrome;
 
@@ -26,7 +27,8 @@ browser.storage.sync.get(
     'disableOsm',
     'alwaysProxy',
     'onlyEmbeddedVideo',
-    'videoQuality'
+    'videoQuality',
+    'removeTwitterSW'
   ],
   result => {
     nitterInstance.value = result.nitterInstance || '';
@@ -40,6 +42,7 @@ browser.storage.sync.get(
     alwaysProxy.checked = result.alwaysProxy;
     onlyEmbeddedVideo.checked = result.onlyEmbeddedVideo;
     videoQuality.value = result.videoQuality || '';
+    removeTwitterSW.checked = !result.removeTwitterSW;
   }
 );
 
@@ -123,3 +126,7 @@ videoQuality.addEventListener('change', event => {
     videoQuality: event.target.options[videoQuality.selectedIndex].value
   });
 });
+
+removeTwitterSW.addEventListener('change', event => {
+  browser.storage.sync.set({ removeTwitterSW: !event.target.checked });
+});