From 01b36e797876ae10de30ac274d91c83b42d8daab Mon Sep 17 00:00:00 2001 From: cocobo1 Date: Sun, 16 Nov 2025 19:40:27 +0200 Subject: [PATCH] fix(statusbar): make the statusbar work on ios + greatly improve loadtimes --- src/lib/addons/plugins/types.ts | 1 - src/lib/addons/themes/colors/statusbar.ts | 21 ++++++--------------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/src/lib/addons/plugins/types.ts b/src/lib/addons/plugins/types.ts index 17894ed..0b6baea 100644 --- a/src/lib/addons/plugins/types.ts +++ b/src/lib/addons/plugins/types.ts @@ -24,7 +24,6 @@ export interface PluginSettingsStorage { } export interface BunnyPluginManifest extends BunnyManifest { - name: string; readonly type: "plugin"; readonly spec: 3; readonly main: string; diff --git a/src/lib/addons/themes/colors/statusbar.ts b/src/lib/addons/themes/colors/statusbar.ts index f57c5f7..3f5f655 100644 --- a/src/lib/addons/themes/colors/statusbar.ts +++ b/src/lib/addons/themes/colors/statusbar.ts @@ -29,29 +29,20 @@ function getBarStyle() { } export default function fixStatusBar() { - + const origSetBarStyle = StatusBar.setBarStyle; if (Platform.OS == "android") { - const origSetBarStyle = StatusBar.setBarStyle; StatusBar.setBarStyle = function (_style: any, ...args: any[]) { return origSetBarStyle.call(this, getBarStyle(), ...args); }; } - - if (Platform.OS == "ios") { + + if (Platform.OS === "ios") { function applyStatusBar() { const style = getBarStyle(); - StatusBar.setBarStyle(style, true); + origSetBarStyle.call(StatusBar, style, true); } - - const unsubscribe = ThemeStore?.addChangeListener?.(applyStatusBar); - StatusBar.setBarStyle(getBarStyle()); - - let delay = 200; - for (let i = 0; i < 5; i++, delay *= 2) { - setTimeout(applyStatusBar, delay); - } - - return unsubscribe; + applyStatusBar(); + setInterval(applyStatusBar, 500); } } \ No newline at end of file