From 4b251dfa8dbeb91d51ac7a20fec7feb3a69380ca Mon Sep 17 00:00:00 2001 From: Send_Nukez Date: Mon, 22 Nov 2021 02:13:35 +0100 Subject: [PATCH] add ability for loading screen to be disabled --- CHANGELOG.md | 2 +- src/js/ConfigMenu.js | 2 +- src/js/main.js | 10 +++++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b565676..541b013 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,5 @@ Added: -- A spinning loader at startup while spotify is not ready +- A spinning loader at startup while spotify is not ready (Can be disabled in settings) Fixed: - Checking for update every 10 Minutes not working diff --git a/src/js/ConfigMenu.js b/src/js/ConfigMenu.js index 032c584..676534f 100644 --- a/src/js/ConfigMenu.js +++ b/src/js/ConfigMenu.js @@ -442,7 +442,7 @@ export default class ConfigMenu { const val = JSON.parse(this.#config[key]?.storageCache ?? localStorage.getItem(`dribbblish:config:${key}`) ?? null); // Turn undefined into null because `JSON.parse()` dosen't like undefined if (val == null || val?.type != this.#config[key]?.type) { localStorage.removeItem(`dribbblish:config:${key}`); - return defaultValueOverride ?? this.#config[key].defaultValue; + return defaultValueOverride ?? this.#config[key]?.defaultValue; } return val.value; } diff --git a/src/js/main.js b/src/js/main.js index cd92247..95fea15 100644 --- a/src/js/main.js +++ b/src/js/main.js @@ -19,9 +19,17 @@ window.Dribbblish = Dribbblish; const colorThief = new ColorThief(); +Dribbblish.config.register({ + type: "checkbox", + key: "showLoadingScreen", + name: "Show Loading Screen", + description: "Show a loading screen at startup while things are loaded in the background", + defaultValue: true +}); + // In the future maybe have some useful info here const loadingHints = ["Getting things ready...", "Starting up...", "Just one moment..."]; -Dribbblish.loader.show(randomFromArray(loadingHints)); +if (Dribbblish.config.get("showLoadingScreen")) Dribbblish.loader.show(randomFromArray(loadingHints)); Dribbblish.on("ready", () => { setTimeout(() => Dribbblish.loader.hide(), 3000);