diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1a91344..b715700 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,8 @@
# Changelog
+## Next
+- Make macOS media key permission request non-intrusive
+
## 0.19.9 - 2025 Jul 4
- Fix column size not updating when resizing window
- Fix column sorting not working
diff --git a/src/App.svelte b/src/App.svelte
index 4f93c41..fc114fe 100755
--- a/src/App.svelte
+++ b/src/App.svelte
@@ -1,6 +1,6 @@
-
+ {
+ if (media_keys_result?.needs_accessibility_permission) {
+ media_keys_result = null
+ media_keys_result = await ipc_renderer.invoke('init_media_keys', false)
+ }
+ }}
+/>
Ferrum
@@ -204,6 +219,56 @@
+ {#if media_keys_result}
+
+
+ {#if media_keys_result.error}
+ {media_keys_result.error}
+
+
+ {:else if media_keys_result.needs_accessibility_permission}
+ Do you want to Ferrum to control the media keys? You may need to delete and re-add the
+ app from the accessibility list
+
+
+ {/if}
+
+
+ {/if}
{#if $queue_visible}
diff --git a/src/components/Button.svelte b/src/components/Button.svelte
index 583e9d3..d589cb5 100644
--- a/src/components/Button.svelte
+++ b/src/components/Button.svelte
@@ -5,17 +5,28 @@
interface $$Props extends HTMLBaseAttributes {
secondary?: boolean
danger?: boolean
+ thin?: boolean
type?: 'button' | 'submit' | 'reset'
}
export let secondary = false
export let danger = false
+ export let thin = false
export let type: 'button' | 'submit' | 'reset' = 'button'
let normal = !danger && !secondary
$: normal = !danger && !secondary
-