diff options
| author | kamtschatka <sschatka@gmail.com> | 2024-06-09 12:23:26 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-09 11:23:26 +0100 |
| commit | 2d0af0b10cf58140a947837d4a2504417f357406 (patch) | |
| tree | 53d6221110a0438df2d100981615704a877c5fa6 /apps/browser-extension/src/utils/settings.ts | |
| parent | 049e79d7fb8313da6d2f2289b080e67de2279109 (diff) | |
| download | karakeep-2d0af0b10cf58140a947837d4a2504417f357406.tar.zst | |
feature(extension): Add a context menu to open your hoarder saves. Fixes #188 (#206)
* Feature request: Browser extension "Open your Hoarder saves" #188
Adds a context menu entry when a hoarder instance is configured and removes it again, if it is not configured anymore
* Feature request: Browser extension "Open your Hoarder saves" #188
moved storage related functions to settings.ts
fixed issues with context menu registration
* only fire callback when the settings change
---------
Co-authored-by: kamtschatka <simon.schatka@gmx.at>
Co-authored-by: MohamedBassem <me@mbassem.com>
Diffstat (limited to 'apps/browser-extension/src/utils/settings.ts')
| -rw-r--r-- | apps/browser-extension/src/utils/settings.ts | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/apps/browser-extension/src/utils/settings.ts b/apps/browser-extension/src/utils/settings.ts index ef290555..76ff0f61 100644 --- a/apps/browser-extension/src/utils/settings.ts +++ b/apps/browser-extension/src/utils/settings.ts @@ -21,3 +21,14 @@ export default function usePluginSettings() { export async function getPluginSettings() { return (await chrome.storage.sync.get("settings")).settings as Settings; } + +export function subscribeToSettingsChanges( + callback: (settings: Settings) => void, +) { + chrome.storage.sync.onChanged.addListener((changes) => { + if (changes.settings === undefined) { + return; + } + callback(changes.settings.newValue as Settings); + }); +} |
