diff --git a/src/assets/javascripts/helpers/youtube/pipedMaterial-preferences.js b/src/assets/javascripts/helpers/youtube/pipedMaterial-preferences.js index 1c6458da..e244cb47 100644 --- a/src/assets/javascripts/helpers/youtube/pipedMaterial-preferences.js +++ b/src/assets/javascripts/helpers/youtube/pipedMaterial-preferences.js @@ -3,23 +3,24 @@ window.browser = window.browser || window.chrome; browser.storage.local.get( [ "theme", - "youtubeAutoplay" + "applyThemeToSites", + "youtubeAutoplay", ], - res => { - let prefs = JSON.parse( - decodeURIComponent( - localStorage.getItem("PREFERENCES") - ) - ) ?? {}; - let oldPrefs = { ...prefs }; + r => { + let applyThemeToSites = r.applyThemeToSites ?? false; + let theme = r.theme ?? "DEFAULT"; + let youtubeAutoplay = r.youtubeAutoplay ?? "DEFAULT"; - if (res.theme == 'dark') prefs.darkMode = true; - if (res.theme == 'light') prefs.darkMode = false; + let prefs = {}; + if (localStorage.getItem("PREFERENCES")) prefs = JSON.parse(localStorage.getItem("PREFERENCES")); - if (res.youtubeAutoplay != "DEFAULT") prefs.playerAutoplay = res.youtubeAutoplay; + if (applyThemeToSites && theme == 'dark') prefs.darkMode = true; + if (applyThemeToSites && theme == 'light') prefs.darkMode = false; - if (oldPrefs != prefs) localStorage.setItem("PREFERENCES", encodeURIComponent(JSON.stringify(prefs))); + if (youtubeAutoplay != "DEFAULT") prefs.playerAutoplay = youtubeAutoplay == 'true'; + + console.log("prefs", JSON.stringify(prefs)); + + localStorage.setItem("PREFERENCES", JSON.stringify(prefs)); } ) - -window.onunload = () => localStorage.removeItem("PREFERENCES"); \ No newline at end of file diff --git a/src/pages/background/background.js b/src/pages/background/background.js index 3a9dfbba..32da2632 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -157,6 +157,7 @@ browser.tabs.onUpdated.addListener( try { url = new URL(changeInfo.url); } catch (_) { return } if (youtubeHelper.isPipedorInvidious(url, 'main_frame', 'piped')) youtubeHelper.initPipedLocalStorage(tabId); + if (youtubeHelper.isPipedorInvidious(url, 'main_frame', 'pipedMaterial')) youtubeHelper.initPipedMaterialLocalStorage(tabId); 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); diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html index 1fa3f716..492843d7 100644 --- a/src/pages/options/youtube/youtube.html +++ b/src/pages/options/youtube/youtube.html @@ -130,7 +130,7 @@