aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-03-15 16:16:17 +0300
committerManeraKai <manerakai@protonmail.com>2022-03-15 16:16:17 +0300
commit3950812dd97213a06e85998e2f14e4b3c64eb369 (patch)
tree5ae2307d2b75d5fe2003917bd01c973a4cf4cecb
parentReadded medium custom domin names #94 (diff)
downloadlibredirect-3950812dd97213a06e85998e2f14e4b3c64eb369.zip
Added a shortcut for chaning instance ALT+SHIFT+L #112
Diffstat (limited to '')
-rw-r--r--src/pages/background/background.js47
-rw-r--r--src/pages/background/shortcuts.js13
2 files changed, 59 insertions, 1 deletions
diff --git a/src/pages/background/background.js b/src/pages/background/background.js
index 8e935751..6b76177a 100644
--- a/src/pages/background/background.js
+++ b/src/pages/background/background.js
@@ -166,4 +166,49 @@ browser.tabs.onUpdated.addListener(
if (translateHelper.isTranslateRedirects(url, 'main_frame', 'lingva')) translateHelper.initLingvaLocalStorage(tabId);
if (instagramHelper.isBibliogram(url)) instagramHelper.initBibliogramCookies(url);
// if (changeInfo.url && youtubeHelper.isPipedorInvidious(url, 'main_frame', 'pipedMaterial')) youtubeHelper.initPipedMaterialLocalStorage(tabId);
- }); \ No newline at end of file
+
+ if (changeWholeInstance(url))
+ browser.tabs.executeScript(
+ tabId,
+ {
+ file: "/pages/background/shortcuts.js",
+ runAt: "document_start"
+ }
+ );
+ });
+
+function changeWholeInstance(url) {
+ let newUrl = youtubeHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = twitterHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = instagramHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = redditHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = searchHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = translateHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = mediumHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = sendTargetsHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = peertubeHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = imgurHelper.changeInstance(url);
+
+ if (!newUrl) newUrl = wikipediaHelper.changeInstance(url);
+
+ return newUrl;
+}
+
+browser.runtime.onMessage.addListener(
+ message => {
+ if (message.function === 'changeInstance') {
+ const url = new URL(message.url);
+ let newUrl = changeWholeInstance(url);
+ if (newUrl) browser.tabs.update({ url: newUrl });
+ }
+ }
+) \ No newline at end of file
diff --git a/src/pages/background/shortcuts.js b/src/pages/background/shortcuts.js
new file mode 100644
index 00000000..12885479
--- /dev/null
+++ b/src/pages/background/shortcuts.js
@@ -0,0 +1,13 @@
+"use strict";
+
+window.browser = window.browser || window.chrome;
+
+document.addEventListener('keydown',
+ e => {
+ if (e.code === 'KeyL' && e.shiftKey && e.altKey)
+ browser.runtime.sendMessage({
+ function: "changeInstance",
+ url: window.location.href,
+ });
+ }
+) \ No newline at end of file