Skip to content

Instantly share code, notes, and snippets.

@danielrosehill
Created June 2, 2026 11:39
Show Gist options
  • Select an option

  • Save danielrosehill/ba96791bc657957c165d146ff2377e08 to your computer and use it in GitHub Desktop.

Select an option

Save danielrosehill/ba96791bc657957c165d146ff2377e08 to your computer and use it in GitHub Desktop.
Fix: Chrome re-prompting for global shortcuts on every launch (KDE Plasma Wayland)

Stop Chrome re-prompting for "global shortcuts" on every launch (KDE Plasma Wayland)

Symptom

On KDE Plasma (Wayland), every time you open Google Chrome (or Chromium) you get a permission prompt along the lines of:

"An application wants to use global shortcuts" / "Global Shortcuts Requested"

You click Allow, but the prompt comes back the next time you launch Chrome. It never sticks.

Cause

On Wayland, applications register global keyboard shortcuts through the xdg-desktop-portal GlobalShortcuts interface instead of grabbing keys directly. Chrome uses this to bind your keyboard's hardware media keys (play / pause / next) to whatever is playing in a tab.

KDE's prompt is supposed to remember the grant in ~/.config/kglobalshortcutsrc. The problem is that Chrome registers its shortcuts under inconsistent component names between launches (e.g. com.google.Chrome, google-chrome, and per-profile IDs like chrome-<hash>-Profile_1). Because the stored grant is keyed by component name, KDE doesn't match the new registration to the previous grant — so it asks again.

You can confirm the duplicate registrations on your own machine:

grep -niE 'chrome|chromium' ~/.config/kglobalshortcutsrc

Fix

Tell Chrome to not use the GlobalShortcuts portal at all, with the launch flag:

--disable-features=GlobalShortcutsPortal

The robust way to apply it is via a local desktop-entry override so it survives Chrome updates (which overwrite /usr/share/applications/google-chrome.desktop).

1. Copy the system desktop file to your local override (if you don't already have one)

cp /usr/share/applications/google-chrome.desktop ~/.local/share/applications/google-chrome.desktop

2. Add the flag to every Exec= line

Open ~/.local/share/applications/google-chrome.desktop and edit each Exec= line. A typical file has three (main, new-window, incognito):

Exec=/usr/bin/google-chrome-stable --disable-features=GlobalShortcutsPortal %U
Exec=/usr/bin/google-chrome-stable --disable-features=GlobalShortcutsPortal
Exec=/usr/bin/google-chrome-stable --disable-features=GlobalShortcutsPortal --incognito

The local file in ~/.local/share/applications/ takes precedence over the system copy in /usr/share/applications/, and won't be clobbered by package updates.

3. Refresh the desktop database

update-desktop-database ~/.local/share/applications

4. Fully quit and relaunch Chrome

Quit Chrome completely (not just the window) and start it again from the application menu. The prompt should be gone.

Notes & caveats

  • Pinned taskbar / launcher icons may have cached the old entry. If the prompt persists, remove and re-pin the Chrome icon so it resolves to the updated desktop entry.
  • Launching from a terminal or script? Add the flag there too — the desktop-entry override only applies to launches that go through the .desktop file.
  • The only tradeoff: with the portal disabled, your keyboard's hardware media keys won't control Chrome's media when Chrome is in the background. In-page playback controls are unaffected. If you rely on background media keys, the alternative is to keep the portal enabled and instead clear the stale entries from ~/.config/kglobalshortcutsrc — but in practice that's the path that keeps re-prompting.
  • Fully reversible: just remove the flag from the Exec= lines and re-run update-desktop-database.

Environment this was verified on

  • Ubuntu 25.10, KDE Plasma 6 (Wayland)
  • Google Chrome 142
  • xdg-desktop-portal-kde 6.4.5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment