about summary refs log tree commit diff stats
path: root/src/pages
diff options
context:
space:
mode:
Diffstat (limited to 'src/pages')
-rw-r--r--src/pages/background/background.js35
-rw-r--r--src/pages/background/incognito.html30
-rw-r--r--src/pages/background/incognito.js29
-rw-r--r--src/pages/options/general/general.html4
-rw-r--r--src/pages/options/general/general.js200
-rw-r--r--src/pages/options/general/general.pug2
-rw-r--r--src/pages/options/imgur/imgur.html2
-rw-r--r--src/pages/options/instagram/instagram.html2
-rw-r--r--src/pages/options/lbry/lbry.html2
-rw-r--r--src/pages/options/maps/maps.html2
-rw-r--r--src/pages/options/medium/medium.html2
-rw-r--r--src/pages/options/peertube/peertube.html2
-rw-r--r--src/pages/options/reddit/reddit.html2
-rw-r--r--src/pages/options/search/search.html2
-rw-r--r--src/pages/options/sendTargets/sendTargets.html2
-rw-r--r--src/pages/options/tiktok/tiktok.html2
-rw-r--r--src/pages/options/translate/translate.html2
-rw-r--r--src/pages/options/twitter/twitter.html2
-rw-r--r--src/pages/options/wikipedia/wikipedia.html2
-rw-r--r--src/pages/options/youtube/youtube.html2
-rw-r--r--src/pages/options/youtubeMusic/youtubeMusic.html2
-rw-r--r--src/pages/popup/popup.html39
-rw-r--r--src/pages/popup/popup.js18
-rw-r--r--src/pages/popup/popup.pug30
-rw-r--r--src/pages/popup/style.css13
-rw-r--r--src/pages/widgets/icons.pug5
-rw-r--r--src/pages/widgets/links.pug2
27 files changed, 263 insertions, 174 deletions
diff --git a/src/pages/background/background.js b/src/pages/background/background.js
index d8f0bb3f..9eedc308 100644
--- a/src/pages/background/background.js
+++ b/src/pages/background/background.js
@@ -1,6 +1,8 @@
 "use strict";
 
 import generalHelper from "../../assets/javascripts/helpers/general.js";
+import utils from "../../assets/javascripts/helpers/utils.js";
+
 import youtubeHelper from "../../assets/javascripts/helpers/youtube/youtube.js";
 import youtubeMusicHelper from "../../assets/javascripts/helpers/youtubeMusic.js";
 import twitterHelper from "../../assets/javascripts/helpers/twitter.js";
@@ -16,7 +18,7 @@ import tiktokHelper from "../../assets/javascripts/helpers/tiktok.js";
 import sendTargetsHelper from "../../assets/javascripts/helpers/sendTargets.js";
 import peertubeHelper from "../../assets/javascripts/helpers/peertube.js";
 import lbryHelper from "../../assets/javascripts/helpers/lbry.js";
-import utils from "../../assets/javascripts/helpers/utils.js";
+
 
 window.browser = window.browser || window.chrome;
 
@@ -35,6 +37,7 @@ browser.runtime.onInstalled.addListener(
     if (details.reason == 'install') {
       fetch('/instances/blocklist.json').then(response => response.text()).then(async data => {
         await browser.storage.local.set({ cloudflareList: JSON.parse(data) })
+        generalHelper.initDefaults();
         youtubeHelper.initDefaults();
         youtubeMusicHelper.initDefaults();
         twitterHelper.initDefaults();
@@ -56,10 +59,6 @@ browser.runtime.onInstalled.addListener(
 )
 
 async function wholeInit() {
-  await mapsHelper.init();
-  await sendTargetsHelper.init();
-  await peertubeHelper.init();
-  await generalHelper.init();
 }
 
 let incognitoInit = false;
@@ -104,10 +103,10 @@ browser.webRequest.onBeforeRequest.addListener(
 
     if (
       details.frameAncestors && details.frameAncestors.length > 0 &&
-      generalHelper.isException(new URL(details.frameAncestors[0].url))
+      await generalHelper.isException(new URL(details.frameAncestors[0].url))
     ) newUrl = null;
 
-    if (generalHelper.isException(url)) newUrl = 'BYPASSTAB';
+    if (await generalHelper.isException(url)) newUrl = 'BYPASSTAB';
 
     if (BYPASSTABs.includes(details.tabId)) newUrl = null;
 
@@ -117,7 +116,7 @@ browser.webRequest.onBeforeRequest.addListener(
         return { cancel: true };
       }
       else if (newUrl === 'BYPASSTAB') {
-        console.log(`Bybassed ${details.tabId} ${url}`);
+        console.log(`Bypassed ${details.tabId} ${url}`);
         if (!BYPASSTABs.includes(details.tabId)) BYPASSTABs.push(details.tabId);
         return null;
       }
@@ -180,9 +179,21 @@ async function redirectOfflineInstance(url, tabId) {
   }
 }
 let counter = 0;
+
+function isAutoRedirect() {
+  return new Promise(resolve => {
+    browser.storage.local.get('autoRedirect',
+      r => {
+        if (r.autoRedirect == true) resolve(true)
+        else resolve(false)
+      }
+    )
+  })
+}
+
 browser.webRequest.onResponseStarted.addListener(
-  details => {
-    if (!generalHelper.getAutoRedirect()) return null;
+  async details => {
+    if (!await isAutoRedirect()) return null;
 
     if (details.type == 'main_frame' && (details.statusCode == 502 || details.statusCode == 503 || details.statusCode == 504)) {
       // if (details.type == 'main_frame' && details.statusCode >= 200) {
@@ -195,8 +206,8 @@ browser.webRequest.onResponseStarted.addListener(
 )
 
 browser.webRequest.onErrorOccurred.addListener(
-  details => {
-    if (!generalHelper.getAutoRedirect()) return;
+  async details => {
+    if (!await isAutoRedirect()) return;
     if (details.type == 'main_frame') {
       const url = new URL(details.url);
       redirectOfflineInstance(url, details.tabId);
diff --git a/src/pages/background/incognito.html b/src/pages/background/incognito.html
index 57d0bfdb..a618cdb6 100644
--- a/src/pages/background/incognito.html
+++ b/src/pages/background/incognito.html
@@ -3,7 +3,35 @@
 
 <head>
     <meta charset="utf-8" />
-    <script type="module" src="incognito.js"></script>
+    <meta charset="UTF-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1" />
+    <title data-localise="__MSG_instanceIsOff__">Initializing Cookies</title>
+    <link href="../stylesheets/styles.css" rel="stylesheet" />
+    <style>
+        body {
+            margin: 0;
+            padding: 0;
+            height: 100vh;
+            width: 100vw;
+            flex-wrap: wrap;
+            justify-content: center;
+            align-items: center;
+            font-size: 30px;
+            display: flex;
+        }
+
+        div {
+            text-align: center;
+        }
+    </style>
 </head>
 
+<body>
+    <div>
+        <p>Initializing Cookies</p>
+    </div>
+    <script type="module" src="incognito.js"></script>
+</body>
+
 </html>
\ No newline at end of file
diff --git a/src/pages/background/incognito.js b/src/pages/background/incognito.js
index 16eccf74..600591d3 100644
--- a/src/pages/background/incognito.js
+++ b/src/pages/background/incognito.js
@@ -1,30 +1,21 @@
-"use strict";
-
 import youtubeHelper from "../../assets/javascripts/helpers/youtube/youtube.js";
 import twitterHelper from "../../assets/javascripts/helpers/twitter.js";
-import instagramHelper from "../../assets/javascripts/helpers/instagram.js";
 import redditHelper from "../../assets/javascripts/helpers/reddit.js";
 import searchHelper from "../../assets/javascripts/helpers/search.js";
 import translateHelper from "../../assets/javascripts/helpers/translate/translate.js";
-import mapsHelper from "../../assets/javascripts/helpers/maps.js";
 import wikipediaHelper from "../../assets/javascripts/helpers/wikipedia.js";
-import mediumHelper from "../../assets/javascripts/helpers/medium.js";
-import imgurHelper from "../../assets/javascripts/helpers/imgur.js";
 import tiktokHelper from "../../assets/javascripts/helpers/tiktok.js";
-import sendTargetsHelper from "../../assets/javascripts/helpers/sendTargets.js";
-import peertubeHelper from "../../assets/javascripts/helpers/peertube.js";
-import lbryHelper from "../../assets/javascripts/helpers/lbry.js";
-import generalHelper from "../../assets/javascripts/helpers/general.js";
-import youtubeMusicHelper from "../../assets/javascripts/helpers/youtubeMusic.js";
 
 window.browser = window.browser || window.chrome;
 
-async function wholeInit() {
-  await youtubeMusicHelper.init();
-  await mapsHelper.init();
-  await sendTargetsHelper.init();
-  await peertubeHelper.init();
-  await generalHelper.init();
-}
-await wholeInit();
+await youtubeHelper.setInvidiousCookies();
+await translateHelper.setSimplyTranslateCookies();
+await twitterHelper.setNitterCookies();
+await wikipediaHelper.setWikilessCookies();
+await searchHelper.setSearxCookies();
+await searchHelper.setSearxngCookies();
+await redditHelper.setLibredditCookies();
+await redditHelper.setTedditCookies();
+await tiktokHelper.setProxiTokCookies();
+
 window.close()
\ No newline at end of file
diff --git a/src/pages/options/general/general.html b/src/pages/options/general/general.html
index cb0c11ff..8239f7c8 100644
--- a/src/pages/options/general/general.html
+++ b/src/pages/options/general/general.html
@@ -30,7 +30,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
@@ -180,7 +180,7 @@
         <input id="medium" type="checkbox">
       </div>
       <div> 
-        <div> <img src="../../../assets/images/peertube-icon.svg">Peertube</div>
+        <div> <img src="../../../assets/images/peertube-icon.svg">PeerTube</div>
         <input id="peertube" type="checkbox">
       </div>
       <div> 
diff --git a/src/pages/options/general/general.js b/src/pages/options/general/general.js
index c8a600ce..f2690209 100644
--- a/src/pages/options/general/general.js
+++ b/src/pages/options/general/general.js
@@ -4,7 +4,21 @@ window.browser = window.browser || window.chrome;
 import utils from "../../../assets/javascripts/helpers/utils.js";
 import generalHelper from "../../../assets/javascripts/helpers/general.js";
 
-
+import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
+import youtubeMusicHelper from "../../../assets/javascripts/helpers/youtubeMusic.js";
+import twitterHelper from "../../../assets/javascripts/helpers/twitter.js";
+import instagramHelper from "../../../assets/javascripts/helpers/instagram.js";
+import redditHelper from "../../../assets/javascripts/helpers/reddit.js";
+import searchHelper from "../../../assets/javascripts/helpers/search.js";
+import translateHelper from "../../../assets/javascripts/helpers/translate/translate.js";
+import mapsHelper from "../../../assets/javascripts/helpers/maps.js";
+import wikipediaHelper from "../../../assets/javascripts/helpers/wikipedia.js";
+import mediumHelper from "../../../assets/javascripts/helpers/medium.js";
+import imgurHelper from "../../../assets/javascripts/helpers/imgur.js";
+import tiktokHelper from "../../../assets/javascripts/helpers/tiktok.js";
+import sendTargetsHelper from "../../../assets/javascripts/helpers/sendTargets.js";
+import peertubeHelper from "../../../assets/javascripts/helpers/peertube.js";
+import lbryHelper from "../../../assets/javascripts/helpers/lbry.js";
 
 let updateInstancesElement = document.getElementById("update-instances");
 updateInstancesElement.addEventListener("click", () => {
@@ -68,21 +82,41 @@ function importError() {
 
 let resetSettingsElement = document.getElementById("reset-settings");
 resetSettingsElement.addEventListener("click",
-  () => {
+  async () => {
     console.log("reset");
-    browser.storage.local.clear();
-    location.reload();
+    await browser.storage.local.clear();
+    fetch('/instances/blocklist.json').then(response => response.text()).then(async data => {
+      await browser.storage.local.set({ cloudflareList: JSON.parse(data) })
+      await generalHelper.initDefaults();
+      await youtubeHelper.initDefaults();
+      await youtubeMusicHelper.initDefaults();
+      await twitterHelper.initDefaults();
+      await instagramHelper.initDefaults();
+      await mapsHelper.initDefaults();
+      await searchHelper.initDefaults();
+      await translateHelper.initDefaults();
+      await mediumHelper.initDefaults();
+      await redditHelper.initDefaults();
+      await wikipediaHelper.initDefaults();
+      await imgurHelper.initDefaults();
+      await tiktokHelper.initDefaults();
+      await sendTargetsHelper.initDefaults();
+      await peertubeHelper.initDefaults();
+      await lbryHelper.initDefaults();
+      location.reload();
+    })
   }
 );
 
 let autoRedirectElement = document.getElementById("auto-redirect")
 autoRedirectElement.addEventListener("change",
-  event => generalHelper.setAutoRedirect(event.target.checked)
+  event => browser.storage.local.set({ autoRedirect: event.target.checked })
 );
+
 let themeElement = document.getElementById("theme");
 themeElement.addEventListener("change", event => {
   const value = event.target.options[theme.selectedIndex].value;
-  generalHelper.setTheme(value);
+  browser.storage.local.set({ theme: value });
 })
 
 let nameCustomInstanceInput = document.getElementById("exceptions-custom-instance");
@@ -99,84 +133,94 @@ for (const frontend of generalHelper.allPopupFrontends)
         var index = popupFrontends.indexOf(frontend);
         if (index !== -1) popupFrontends.splice(index, 1);
       }
-      generalHelper.setPopupFrontends(popupFrontends);
+      browser.storage.local.set({ popupFrontends })
     }
   )
 
-generalHelper.init().then(() => {
-  autoRedirectElement.checked = generalHelper.getAutoRedirect();
-  themeElement.value = generalHelper.getTheme();
-  instanceTypeElement.addEventListener("change",
-    event => {
-      instanceType = event.target.options[instanceTypeElement.selectedIndex].value
-      if (instanceType == 'url') {
-        nameCustomInstanceInput.setAttribute("type", "url");
-        nameCustomInstanceInput.setAttribute("placeholder", "https://www.google.com");
-      }
-      else if (instanceType == 'regex') {
-        nameCustomInstanceInput.setAttribute("type", "text");
-        nameCustomInstanceInput.setAttribute("placeholder", "https?:\/\/(www\.|)youtube\.com\/");
+
+browser.storage.local.get(
+  [
+    'theme',
+    'autoRedirect',
+    'exceptions'
+  ],
+  r => {
+    autoRedirectElement.checked = r.autoRedirect;
+    themeElement.value = r.theme;
+    instanceTypeElement.addEventListener("change",
+      event => {
+        instanceType = event.target.options[instanceTypeElement.selectedIndex].value
+        if (instanceType == 'url') {
+          nameCustomInstanceInput.setAttribute("type", "url");
+          nameCustomInstanceInput.setAttribute("placeholder", "https://www.google.com");
+        }
+        else if (instanceType == 'regex') {
+          nameCustomInstanceInput.setAttribute("type", "text");
+          nameCustomInstanceInput.setAttribute("placeholder", "https?:\/\/(www\.|)youtube\.com\/");
+        }
       }
-    }
-  )
-  let exceptionsCustomInstances = generalHelper.getExceptions();
-  function calcExceptionsCustomInstances() {
-    document.getElementById("exceptions-custom-checklist").innerHTML =
-      [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex].map(
-        (x) => `<div>
-                  ${x}
-                  <button class="add" id="clear-${x}">
-                    <svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px"
-                    fill="currentColor">
-                      <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z" />
-                    </svg>
-                  </button>
-                </div>
-                <hr>`
-      ).join('\n');
-
-    for (const x of [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex]) {
-      document.getElementById(`clear-${x}`).addEventListener("click",
-        () => {
-          console.log(x);
-          let index;
-          index = exceptionsCustomInstances.url.indexOf(x);
-          if (index > -1)
-            exceptionsCustomInstances.url.splice(index, 1);
-          else {
-            index = exceptionsCustomInstances.regex.indexOf(x);
+    )
+    let exceptionsCustomInstances = r.exceptions;
+    function calcExceptionsCustomInstances() {
+      document.getElementById("exceptions-custom-checklist").innerHTML =
+        [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex].map(
+          (x) => `<div>
+                      ${x}
+                      <button class="add" id="clear-${x}">
+                        <svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px"
+                        fill="currentColor">
+                          <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z" />
+                        </svg>
+                      </button>
+                    </div>
+                    <hr>`
+        ).join('\n');
+
+      for (const x of [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex]) {
+        document.getElementById(`clear-${x}`).addEventListener("click",
+          () => {
+            console.log(x);
+            let index;
+            index = exceptionsCustomInstances.url.indexOf(x);
             if (index > -1)
-              exceptionsCustomInstances.regex.splice(index, 1);
-          }
-          generalHelper.setExceptions(exceptionsCustomInstances);
-          calcExceptionsCustomInstances();
-        });
-    }
-  }
-  calcExceptionsCustomInstances();
-  document.getElementById("custom-exceptions-instance-form").addEventListener("submit", (event) => {
-    event.preventDefault();
-
-    let val
-    if (instanceType == 'url') {
-      if (nameCustomInstanceInput.validity.valid) {
-        let url = new URL(nameCustomInstanceInput.value);
-        val = `${url.protocol}//${url.host}`
-        if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val)
+              exceptionsCustomInstances.url.splice(index, 1);
+            else {
+              index = exceptionsCustomInstances.regex.indexOf(x);
+              if (index > -1)
+                exceptionsCustomInstances.regex.splice(index, 1);
+            }
+            browser.storage.local.set({ exceptions: exceptionsCustomInstances })
+            calcExceptionsCustomInstances();
+          });
       }
-    } else if (instanceType == 'regex') {
-      val = nameCustomInstanceInput.value
-      if (val.trim() != '' && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val)
-    }
-    if (val) {
-      generalHelper.setExceptions(exceptionsCustomInstances);
-      console.log("exceptionsCustomInstances", exceptionsCustomInstances)
-      nameCustomInstanceInput.value = '';
     }
     calcExceptionsCustomInstances();
-  })
+    document.getElementById("custom-exceptions-instance-form").addEventListener("submit", (event) => {
+      event.preventDefault();
 
-  popupFrontends = generalHelper.getPopupFrontends();
-  for (const frontend of generalHelper.allPopupFrontends)
-    document.getElementById(frontend).checked = popupFrontends.includes(frontend);
-})
\ No newline at end of file
+      let val
+      if (instanceType == 'url') {
+        if (nameCustomInstanceInput.validity.valid) {
+          let url = new URL(nameCustomInstanceInput.value);
+          val = `${url.protocol}//${url.host}`
+          if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val)
+        }
+      } else if (instanceType == 'regex') {
+        val = nameCustomInstanceInput.value
+        if (val.trim() != '' && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val)
+      }
+      if (val) {
+        browser.storage.local.set({ exceptions: exceptionsCustomInstances })
+        nameCustomInstanceInput.value = '';
+      }
+      calcExceptionsCustomInstances();
+    })
+
+    browser.storage.local.get('popupFrontends',
+      r => {
+        popupFrontends = r.popupFrontends;
+        for (const frontend of generalHelper.allPopupFrontends)
+          document.getElementById(frontend).checked = popupFrontends.includes(frontend);
+      }
+    )
+  })
diff --git a/src/pages/options/general/general.pug b/src/pages/options/general/general.pug
index 6a3b1370..0cef8025 100644
--- a/src/pages/options/general/general.pug
+++ b/src/pages/options/general/general.pug
@@ -151,7 +151,7 @@ body.option(dir="auto")
             div 
                 div 
                     img(src="../../../assets/images/peertube-icon.svg")
-                    |Peertube
+                    |PeerTube
                 input#peertube(type="checkbox")
 
             div 
diff --git a/src/pages/options/imgur/imgur.html b/src/pages/options/imgur/imgur.html
index d537acff..6194fbb3 100644
--- a/src/pages/options/imgur/imgur.html
+++ b/src/pages/options/imgur/imgur.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/instagram/instagram.html b/src/pages/options/instagram/instagram.html
index b03040b7..dfb58722 100644
--- a/src/pages/options/instagram/instagram.html
+++ b/src/pages/options/instagram/instagram.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/lbry/lbry.html b/src/pages/options/lbry/lbry.html
index 4e3c1316..3802a149 100644
--- a/src/pages/options/lbry/lbry.html
+++ b/src/pages/options/lbry/lbry.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a class="selected" href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/maps/maps.html b/src/pages/options/maps/maps.html
index d7961b31..af7d0729 100644
--- a/src/pages/options/maps/maps.html
+++ b/src/pages/options/maps/maps.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/medium/medium.html b/src/pages/options/medium/medium.html
index 136081d7..87aff725 100644
--- a/src/pages/options/medium/medium.html
+++ b/src/pages/options/medium/medium.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a class="selected" href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/peertube/peertube.html b/src/pages/options/peertube/peertube.html
index d5ded94c..1ddc26ac 100644
--- a/src/pages/options/peertube/peertube.html
+++ b/src/pages/options/peertube/peertube.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a class="selected" href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a class="selected" href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html
index 876369f9..754314eb 100644
--- a/src/pages/options/reddit/reddit.html
+++ b/src/pages/options/reddit/reddit.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html
index 46914d19..8b22e43a 100644
--- a/src/pages/options/search/search.html
+++ b/src/pages/options/search/search.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/sendTargets/sendTargets.html b/src/pages/options/sendTargets/sendTargets.html
index 7a684175..f372b3b0 100644
--- a/src/pages/options/sendTargets/sendTargets.html
+++ b/src/pages/options/sendTargets/sendTargets.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/tiktok/tiktok.html b/src/pages/options/tiktok/tiktok.html
index 9b5932fc..89a14ba6 100644
--- a/src/pages/options/tiktok/tiktok.html
+++ b/src/pages/options/tiktok/tiktok.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/translate/translate.html b/src/pages/options/translate/translate.html
index 249ce0b1..c62ea5a6 100644
--- a/src/pages/options/translate/translate.html
+++ b/src/pages/options/translate/translate.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html
index 95e0a0bf..2a477e60 100644
--- a/src/pages/options/twitter/twitter.html
+++ b/src/pages/options/twitter/twitter.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html
index c8475f02..ba22bc31 100644
--- a/src/pages/options/wikipedia/wikipedia.html
+++ b/src/pages/options/wikipedia/wikipedia.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html
index 20d13bd3..6a2036a1 100644
--- a/src/pages/options/youtube/youtube.html
+++ b/src/pages/options/youtube/youtube.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/options/youtubeMusic/youtubeMusic.html b/src/pages/options/youtubeMusic/youtubeMusic.html
index 9910630e..845ec44a 100644
--- a/src/pages/options/youtubeMusic/youtubeMusic.html
+++ b/src/pages/options/youtubeMusic/youtubeMusic.html
@@ -31,7 +31,7 @@
             <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
           </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
+      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
           <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
diff --git a/src/pages/popup/popup.html b/src/pages/popup/popup.html
index 48f6f116..ffc1c864 100644
--- a/src/pages/popup/popup.html
+++ b/src/pages/popup/popup.html
@@ -35,7 +35,7 @@
         <h4>Reddit</h4></a>
       <input id="disable-reddit" type="checkbox">
     </div>
-    <div class="some-block" id="wikipedia"><a class="title" href="https://wikipedia.com"><img src="../../assets/images/wikipedia-icon.png">
+    <div class="some-block" id="wikipedia"><a class="title" href="https://wikipedia.com"><img src="../../assets/images/wikipedia-icon.svg">
         <h4>Wikipedia</h4></a>
       <input id="disable-wikipedia" type="checkbox">
     </div>
@@ -48,15 +48,15 @@
         <h4>Medium</h4></a>
       <input id="disable-medium" type="checkbox">
     </div>
-    <div class="some-block" id="peertube"><a class="title" href="https://peertube.com"><img src="../../assets/images/peertube-icon.png">
-        <h4>Peertube</h4></a>
+    <div class="some-block" id="peertube"><a class="title" href="https://peertube.com"><img src="../../assets/images/peertube-icon.svg">
+        <h4>PeerTube</h4></a>
       <input id="disable-peertube" type="checkbox">
     </div>
     <div class="some-block" id="lbry"><a class="title" href="https://lbry.com"><img src="../../assets/images/lbry-icon.png">
         <h4>LBRY</h4></a>
       <input id="disable-lbry" type="checkbox">
     </div>
-    <div class="some-block" id="search"><a class="title" href="https://libredirect.invalid">
+    <div class="some-block" id="search"><a class="title" href="https://search.libredirect.invalid">
         <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
           <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
         </svg>
@@ -77,34 +77,35 @@
         <h4>Maps</h4></a>
       <input id="disable-osm" type="checkbox">
     </div>
-    <div class="some-block" id="sendTargets"><a class="title" href="https://send.invalid">
+    <div class="some-block" id="sendTargets"><a class="title" href="https://send.libredirect.invalid">
         <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
           <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
         </svg>
         <h4>Send Files</h4></a>
       <input id="disable-sendTargets" type="checkbox">
     </div>
+    <hr>
     <div class="some-block" id="change_instance_div"><a class="title button" id="change_instance">
+        <h4>Change Instance</h4>
         <svg xmlns="http://www.w3.org/2000/svg" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
           <path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"></path>
-        </svg>
-        <h4>Change Instance</h4></a></div>
-    <div class="some-block"><a class="title button" id="more-options">
-        <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-          <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-        </svg>
-        <h4>Settings</h4></a></div>
+        </svg></a></div>
     <div class="some-block" id="copy_raw_div" title="Copy the original redirected link">        <a class="title button" id="copy_raw">
+        <h4>Copy Raw</h4>
         <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
           <path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"></path>
-        </svg>
-        <h4>Copy Raw</h4></a></div>
+        </svg></a></div>
     <div class="some-block" id="unify_div" title="Unify cookies across all selected instances"><a class="title button" id="unify">
-        <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <rect fill="none" height="24" width="24"></rect>
-          <path d="M18,2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9c1.1,0,2-0.9,2-2V4C20,2.9,19.1,2,18,2z M18,16H9V4h9V16z M3,15v-2h2v2H3z M3,9.5h2v2H3V9.5z M10,20h2v2h-2V20z M3,18.5v-2h2v2H3z M5,22c-1.1,0-2-0.9-2-2h2V22z M8.5,22h-2v-2h2V22z M13.5,22L13.5,22l0-2h2 v0C15.5,21.1,14.6,22,13.5,22z M5,6L5,6l0,2H3v0C3,6.9,3.9,6,5,6z"></path>
-        </svg>
-        <h4>Unify Settings</h4></a></div>
+        <h4>Unify Settings</h4>
+        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+          <path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path>
+        </svg></a></div>
+    <div class="some-block"><a class="title button" id="more-options">
+        <h4>Settings</h4>
+        <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
+          <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
+        </svg></a></div>
+    <div class="space"></div>
     <script type="module" src="../options/init.js"></script>
     <script type="module" src="./popup.js"></script>
     <script src="../../assets/javascripts/localise.js"></script>
diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js
index b9c75791..824f178b 100644
--- a/src/pages/popup/popup.js
+++ b/src/pages/popup/popup.js
@@ -98,14 +98,14 @@ utils.unify(true).then(r => {
   }
 })
 
-
 document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage());
 
-generalHelper.init().then(() => {
-  let popupFrontends = generalHelper.getPopupFrontends();
-  for (const frontend of generalHelper.allPopupFrontends)
-    if (!popupFrontends.includes(frontend))
-      document.getElementById(frontend).classList.add("hide")
-    else
-      document.getElementById(frontend).classList.remove("hide")
-});
\ No newline at end of file
+browser.storage.local.get(
+  'popupFrontends',
+  r => {
+    for (const frontend of generalHelper.allPopupFrontends)
+      if (!r.popupFrontends.includes(frontend))
+        document.getElementById(frontend).classList.add("hide")
+      else
+        document.getElementById(frontend).classList.remove("hide")
+  });
\ No newline at end of file
diff --git a/src/pages/popup/popup.pug b/src/pages/popup/popup.pug
index 35234b15..5e067f3f 100644
--- a/src/pages/popup/popup.pug
+++ b/src/pages/popup/popup.pug
@@ -52,7 +52,7 @@ html(lang="en")
 
         #wikipedia.some-block
             a.title(href="https://wikipedia.com")
-                img(src="../../assets/images/wikipedia-icon.png")
+                img(src="../../assets/images/wikipedia-icon.svg")
                 h4 Wikipedia
             input#disable-wikipedia(type="checkbox")
 
@@ -64,8 +64,8 @@ html(lang="en")
 
         #peertube.some-block
             a.title(href="https://peertube.com")
-                img(src="../../assets/images/peertube-icon.png")
-                h4 Peertube
+                img(src="../../assets/images/peertube-icon.svg")
+                h4 PeerTube
             input#disable-peertube(type="checkbox")
 
         #lbry.some-block
@@ -75,7 +75,7 @@ html(lang="en")
             input#disable-lbry(type="checkbox")
 
         #search.some-block
-            a.title(href="https://libredirect.invalid")
+            a.title(href="https://search.libredirect.invalid")
                 +search
                 h4 Search
             input#disable-search(type="checkbox")
@@ -93,30 +93,34 @@ html(lang="en")
             input#disable-osm(type="checkbox")
 
         #sendTargets.some-block
-            a.title(href="https://send.invalid")
+            a.title(href="https://send.libredirect.invalid")
                 +send
                 h4 Send Files
             input#disable-sendTargets(type="checkbox")
 
+        hr
+
         #change_instance_div.some-block
             a#change_instance.title.button
-                +change_instance
                 h4 Change Instance
-
-        .some-block
-            a#more-options.title.button
-                +settings
-                h4 Settings
+                +change_instance
 
         #copy_raw_div.some-block(title="Copy the original redirected link")         
             a#copy_raw.title.button
-                +copy_raw
                 h4 Copy Raw
+                +copy_raw
 
         #unify_div.some-block(title="Unify cookies across all selected instances")
             a#unify.title.button
-                +unify
                 h4 Unify Settings
+                +unify
+
+        .some-block
+            a#more-options.title.button
+                h4 Settings
+                +settings
+
+        .space
 
         script(type="module" src="../options/init.js")
         script(type="module" src="./popup.js")
diff --git a/src/pages/popup/style.css b/src/pages/popup/style.css
index 4cc56145..8136237a 100644
--- a/src/pages/popup/style.css
+++ b/src/pages/popup/style.css
@@ -1,5 +1,5 @@
 body {
-    width: 240px;
+    width: 230px;
     min-height: auto;
 }
 
@@ -9,4 +9,15 @@ html, body {
 
 .hide {
     display: none !important;
+}
+
+.button {
+    display: flex;
+    margin: 0 auto;
+    justify-content: space-between;
+    width: 100%;
+}
+
+.space {
+    height: 10px;
 }
\ No newline at end of file
diff --git a/src/pages/widgets/icons.pug b/src/pages/widgets/icons.pug
index 4ef8d6b2..60186693 100644
--- a/src/pages/widgets/icons.pug
+++ b/src/pages/widgets/icons.pug
@@ -39,6 +39,5 @@ mixin general
 
 
 mixin unify
-    svg(xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-        rect(fill="none" height="24" width="24")
-        path(d="M18,2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9c1.1,0,2-0.9,2-2V4C20,2.9,19.1,2,18,2z M18,16H9V4h9V16z M3,15v-2h2v2H3z M3,9.5h2v2H3V9.5z M10,20h2v2h-2V20z M3,18.5v-2h2v2H3z M5,22c-1.1,0-2-0.9-2-2h2V22z M8.5,22h-2v-2h2V22z M13.5,22L13.5,22l0-2h2 v0C15.5,21.1,14.6,22,13.5,22z M5,6L5,6l0,2H3v0C3,6.9,3.9,6,5,6z")
\ No newline at end of file
+    svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
+        path(d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z")
\ No newline at end of file
diff --git a/src/pages/widgets/links.pug b/src/pages/widgets/links.pug
index 4d6fdd74..97601966 100644
--- a/src/pages/widgets/links.pug
+++ b/src/pages/widgets/links.pug
@@ -44,7 +44,7 @@ mixin links(service)
 
         .title 
             img(src="../../../assets/images/peertube-icon.svg")
-            a(href="../peertube/peertube.html" data-localise="__MSG_peertube__" class=service == "peertube" ? "selected" : "") Peertube
+            a(href="../peertube/peertube.html" data-localise="__MSG_peertube__" class=service == "peertube" ? "selected" : "") PeerTube
 
         .title 
             img(src="../../../assets/images/lbry-icon.png")