From d26d4211b658aa7dd2d16ad418cfc38bb7f84e4d Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Sun, 13 Mar 2022 14:18:06 +0300 Subject: Fixed Piped-Material settings not working #86 --- .../helpers/youtube/pipedMaterial-preferences.js | 29 +++++++++++----------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'src/assets') 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 -- cgit 1.4.1