From 92d8d683c84c91e777d45ae6b22ec6a3db1401f7 Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Sun, 27 Feb 2022 23:34:40 +0300 Subject: Fixed settings for youtube #69 --- src/assets/images/libredirect-128.png | Bin 0 -> 3572 bytes src/assets/images/libredirect-16.png | Bin 0 -> 530 bytes src/assets/images/libredirect-32.png | Bin 0 -> 971 bytes src/assets/images/libredirect-48.png | Bin 0 -> 1447 bytes src/assets/javascripts/helpers/twitter.js | 15 +++--- src/assets/javascripts/remove-twitter-sw.js | 73 ---------------------------- src/manifest.json | 16 +++--- src/pages/options/youtube/invidious.js | 3 +- src/pages/options/youtube/youtube.html | 2 +- src/pages/options/youtube/youtube.js | 5 +- 10 files changed, 20 insertions(+), 94 deletions(-) create mode 100644 src/assets/images/libredirect-128.png create mode 100644 src/assets/images/libredirect-16.png create mode 100644 src/assets/images/libredirect-32.png create mode 100644 src/assets/images/libredirect-48.png delete mode 100644 src/assets/javascripts/remove-twitter-sw.js diff --git a/src/assets/images/libredirect-128.png b/src/assets/images/libredirect-128.png new file mode 100644 index 00000000..123692ce Binary files /dev/null and b/src/assets/images/libredirect-128.png differ diff --git a/src/assets/images/libredirect-16.png b/src/assets/images/libredirect-16.png new file mode 100644 index 00000000..cdad1192 Binary files /dev/null and b/src/assets/images/libredirect-16.png differ diff --git a/src/assets/images/libredirect-32.png b/src/assets/images/libredirect-32.png new file mode 100644 index 00000000..027c43bd Binary files /dev/null and b/src/assets/images/libredirect-32.png differ diff --git a/src/assets/images/libredirect-48.png b/src/assets/images/libredirect-48.png new file mode 100644 index 00000000..32e2a53f Binary files /dev/null and b/src/assets/images/libredirect-48.png differ diff --git a/src/assets/javascripts/helpers/twitter.js b/src/assets/javascripts/helpers/twitter.js index 4465aba4..73d5ee20 100644 --- a/src/assets/javascripts/helpers/twitter.js +++ b/src/assets/javascripts/helpers/twitter.js @@ -3,12 +3,12 @@ window.browser = window.browser || window.chrome; import commonHelper from './common.js' const targets = [ - "twitter.com", - "www.twitter.com", - "mobile.twitter.com", - "pbs.twimg.com", - "video.twimg.com", - "platform.twitter.com" + /https?:\/\/twitter\.com/, + /https?:\/\/www\.twitter\.com/, + /https?:\/\/mobile\.twitter\.com/, + /https?:\/\/pbs\.twimg\.com/, + /https?:\/\/video\.twimg\.com/, + /https?:\/\/platform\.twitter\.com\/embed/ ]; let redirects = { @@ -79,7 +79,6 @@ function setNitterTorCustomRedirects(val) { console.log("nitterTorCustomRedirects: ", val) } - let disable; const getDisable = () => disable; function setDisable(val) { @@ -109,7 +108,7 @@ function isTwitter(url, initiator) { ].includes(initiator.origin) || targets.includes(initiator.host)) ) return false; - return targets.includes(url.host) + return targets.some((rx) => rx.test(url.href)); } function redirect(url) { diff --git a/src/assets/javascripts/remove-twitter-sw.js b/src/assets/javascripts/remove-twitter-sw.js deleted file mode 100644 index 2a4bb46a..00000000 --- a/src/assets/javascripts/remove-twitter-sw.js +++ /dev/null @@ -1,73 +0,0 @@ -"use strict"; - -let disableTwitter; -let nitterInstance; -let redirectBypassFlag; -let exceptions; - -window.browser = window.browser || window.chrome; - -Promise.all([ - import(browser.runtime.getURL("src/assets/javascripts/helpers/common.js")), - import(browser.runtime.getURL("src/assets/javascripts/helpers/twitter.js")), -]).then( - (helpers) => { - let commonHelper; - let twitterHelper; - [commonHelper, twitterHelper] = helpers; - - function shouldRedirect(url) { - return ( - !redirectBypassFlag && - !disableTwitter && - url.host !== nitterInstance && - !url.pathname.includes("/home") - ); - } - - function redirectTwitter(url) { - if (url.host.split(".")[0] === "pbs") - return `${nitterInstance}/pic/${encodeURIComponent(url.href)}`; - else if (url.host.split(".")[0] === "video") - return `${nitterInstance}/gif/${encodeURIComponent(url.href)}`; - else - return `${nitterInstance}${url.pathname}${url.search}`; - } - - browser.storage.local.get( - [ - "nitterInstance", - "disableTwitter", - "removeTwitterSW", - "redirectBypassFlag", - "exceptions", - ], - (result) => { - redirectBypassFlag = result.redirectBypassFlag; - browser.storage.local.set({ redirectBypassFlag: false }); - if (!result.removeTwitterSW) { - disableTwitter = result.disableTwitter; - nitterInstance = result.nitterInstance ?? commonHelper.default.getRandomInstance(twitterHelper.default.redirects); - exceptions = result.exceptions ? result.exceptions.map((e) => new RegExp(e)) : []; - navigator.serviceWorker.getRegistrations().then((registrations) => { - for (let registration of registrations) { - if (registration.scope === "https://twitter.com/") { - registration.unregister(); - console.log("Unregistered Twitter SW", registration); - } - } - }); - const url = new URL(window.location); - if (shouldRedirect(url)) { - const redirect = redirectTwitter(url); - console.info("Redirecting", `"${url.href}"`, "=>", `"${redirect}"`); - window.location = redirect; - } - } - } - ); - }, - (error) => { - console.error(error); - } -); diff --git a/src/manifest.json b/src/manifest.json index 5a86bdf2..f2a5ee7d 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -9,10 +9,10 @@ }, "default_locale": "en", "icons": { - "16": "assets/images/libredirect.png", - "32": "assets/images/libredirect.png", - "48": "assets/images/libredirect.png", - "128": "assets/images/libredirect.png" + "16": "assets/images/libredirect-16.png", + "32": "assets/images/libredirect-32.png", + "48": "assets/images/libredirect-48.png", + "128": "assets/images/libredirect-128.png" }, "permissions": [ "storage", @@ -25,10 +25,10 @@ "browser_style": false, "default_popup": "pages/popup/popup.html", "default_icon": { - "16": "assets/images/libredirect.png", - "32": "assets/images/libredirect.png", - "48": "assets/images/libredirect.png", - "128": "assets/images/libredirect.png" + "16": "assets/images/libredirect-16.png", + "32": "assets/images/libredirect-32.png", + "48": "assets/images/libredirect-48.png", + "128": "assets/images/libredirect-128.png" } }, "options_ui": { diff --git a/src/pages/options/youtube/invidious.js b/src/pages/options/youtube/invidious.js index 17cbda37..2b6f7275 100644 --- a/src/pages/options/youtube/invidious.js +++ b/src/pages/options/youtube/invidious.js @@ -29,7 +29,8 @@ persistInvidiousPrefsElement.addEventListener("change", youtubeHelper.init().then(() => { invidiousPlayerStyleElement.value = youtubeHelper.getInvidiousPlayerStyle(); - invidiousAlwaysProxyElement.checked = youtubeHelper.getInvidiousAlwaysProxy(); + invidiousAlwaysProxyElement.value = youtubeHelper.getInvidiousAlwaysProxy(); + console.log("youtubeHelper.getInvidiousAlwaysProxy()", youtubeHelper.getInvidiousAlwaysProxy()) invidiousVideoQualityElement.value = youtubeHelper.getInvidiousVideoQuality(); invidiousSubtitlesElement.value = youtubeHelper.getInvidiousSubtitles(); persistInvidiousPrefsElement.checked = youtubeHelper.getPersistInvidiousPrefs(); diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html index 243c1c9e..1085d388 100644 --- a/src/pages/options/youtube/youtube.html +++ b/src/pages/options/youtube/youtube.html @@ -192,7 +192,7 @@ diff --git a/src/pages/options/youtube/youtube.js b/src/pages/options/youtube/youtube.js index 5be3ff86..f1bd6351 100644 --- a/src/pages/options/youtube/youtube.js +++ b/src/pages/options/youtube/youtube.js @@ -144,13 +144,13 @@ function changeProtocolSettings(protocol) { youtubeHelper.init().then(() => { disableYoutubeElement.checked = !youtubeHelper.getDisable(); - themeElement.checked = youtubeHelper.getTheme(); + themeElement.value = youtubeHelper.getTheme(); volumeElement.value = youtubeHelper.getVolume(); volumeValueElement.textContent = `${youtubeHelper.getVolume()}%`; OnlyEmbeddedVideoElement.value = youtubeHelper.getOnlyEmbeddedVideo(); alwaysUsePreferredElement.checked = youtubeHelper.getAlwaysusePreferred(); bypassWatchOnYoutubeElement.checked = youtubeHelper.getBypassWatchOnYoutube(); - autoplayElement.checked = youtubeHelper.getAutoplay(); + autoplayElement.value = youtubeHelper.getAutoplay(); let frontend = youtubeHelper.getFrontend(); youtubeFrontendElement.value = frontend; changeFrontendsSettings(frontend); @@ -162,7 +162,6 @@ youtubeHelper.init().then(() => { let youtubeEmbedFrontend = youtubeHelper.getYoutubeEmbedFrontend() youtubeEmbedFrontendElement.value = youtubeEmbedFrontend if (frontend == "freetube" || frontend == "yatte") { - console.log("youtubeEmbedFrontend", youtubeEmbedFrontend); changeYoutubeEmbedFrontendsSettings(youtubeEmbedFrontend) }; }); -- cgit 1.4.1