diff --git a/src/utils/bx-exposed.ts b/src/utils/bx-exposed.ts index c85683e..dd4b767 100644 --- a/src/utils/bx-exposed.ts +++ b/src/utils/bx-exposed.ts @@ -1,5 +1,4 @@ import { ControllerShortcut } from "@/modules/controller-shortcut"; -import { GameBar } from "@modules/game-bar/game-bar"; import { BxEvent } from "@utils/bx-event"; import { STATES } from "@utils/global"; import { getPref, PrefKey } from "@utils/preferences"; diff --git a/src/utils/preferences.ts b/src/utils/preferences.ts index 9e88db8..98f6b78 100644 --- a/src/utils/preferences.ts +++ b/src/utils/preferences.ts @@ -344,11 +344,10 @@ export class Preferences { migrate: function(savedPrefs: any, value: any) { try { value = parseInt(value); - if (value < 100) { + if (value !== 0 && value < 100) { value *= 1024 * 1000; } - - this.set(PrefKey.BITRATE_VIDEO_MAX, value); + this.set(PrefKey.BITRATE_VIDEO_MAX, value, true); savedPrefs[PrefKey.BITRATE_VIDEO_MAX] = value; } catch (e) {} }, @@ -701,11 +700,13 @@ export class Preferences { for (let settingId in Preferences.SETTINGS) { const setting = Preferences.SETTINGS[settingId]; - setting.ready && setting.ready.call(this, setting); if (setting.migrate && settingId in savedPrefs) { setting.migrate.call(this, savedPrefs, savedPrefs[settingId]); + delete setting.migrate; } + + setting.ready && setting.ready.call(this, setting); } for (let settingId in Preferences.SETTINGS) { @@ -783,11 +784,11 @@ export class Preferences { return this.#prefs[key]; } - set(key: PrefKey, value: any): any { + set(key: PrefKey, value: any, skipSave?: boolean): any { value = this.#validateValue(key, value); this.#prefs[key] = value; - this.#updateStorage(); + !skipSave && this.#updateStorage(); return value; }