From cef7ca4c841d21918e9faba3962ac9711dabaf5e Mon Sep 17 00:00:00 2001 From: Bradley Axen Date: Sun, 26 Jan 2025 15:11:54 -0800 Subject: [PATCH] fix: send event to reload settings on link (#799) --- ui/desktop/src/components/settings/Settings.tsx | 16 ++++++++++++++++ ui/desktop/src/extensions.tsx | 2 ++ 2 files changed, 18 insertions(+) diff --git a/ui/desktop/src/components/settings/Settings.tsx b/ui/desktop/src/components/settings/Settings.tsx index 8a26859e..7391aaed 100644 --- a/ui/desktop/src/components/settings/Settings.tsx +++ b/ui/desktop/src/components/settings/Settings.tsx @@ -78,6 +78,22 @@ export default function Settings() { localStorage.setItem('user_settings', JSON.stringify(settings)); }, [settings]); + // Listen for settings updates from extension storage + useEffect(() => { + const handleSettingsUpdate = (_: any) => { + const saved = localStorage.getItem('user_settings'); + if (saved) { + let currentSettings = JSON.parse(saved); + setSettings(currentSettings); + } + }; + + window.electron.on('settings-updated', handleSettingsUpdate); + return () => { + window.electron.off('settings-updated', handleSettingsUpdate); + }; + }, []); + // Handle URL parameters for auto-opening extension configuration useEffect(() => { const params = new URLSearchParams(location.search); diff --git a/ui/desktop/src/extensions.tsx b/ui/desktop/src/extensions.tsx index 90047906..aaa7c6f6 100644 --- a/ui/desktop/src/extensions.tsx +++ b/ui/desktop/src/extensions.tsx @@ -193,6 +193,8 @@ function storeExtensionConfig(config: FullExtensionConfig) { userSettings.extensions.push(config); localStorage.setItem('user_settings', JSON.stringify(userSettings)); console.log('Extension config stored successfully in user_settings'); + // Notify settings update through electron IPC + window.electron.send('settings-updated'); } else { console.log('Extension config already exists in user_settings'); }