plac

Roon remote in GTK4

Add user-customizable keyboard shortcuts https://codeberg.org/pocka/plac-for-gtk4/issues/26 All but "browse back" have no default set for backward-compatibility. "F10" for "Open application menu" might be a good candidate for default, but I'm afraid that stealing key press from DE or other stack's shortcut. --- Why writing own UI and mechansim? GTK4/GNOME does not have good support for keyboard shortcuts. It does not have a native way to let users customize shortcut, or API to do so. This is fundamental design problem of GNOME. From their HIG: https://developer.gnome.org/hig/guidelines/keyboard.html > Use the standard GNOME shortcut keys if your app supports those functions. > ... > Don’t assign awkward reaches. Some people may only be able to use one hand > on the keyboard, so shortcuts that can be easily used with one hand are > preferable for common operations. (This guideline also applies to access > keys below.) While the first line makes sense, the "standard GNOME shortcut keys" lacks many application types they couldn't imagine of, thus "non-standard" applications have difficult time finding unused safe key combinations. The last line is straightup garbage. It's clear they don't understand keyboard accessibility at all: people have different hand shapes, use different keyboard layouts, or may have difficulty using their hand partially or entirely. Application opts to non-configurable keyboard shortcut is *okay*, but UI toolkit and platform embracing hardcoded keyboard shortcuts is not. It's accessibility nightmare. A GUI toolkit can't have great accessibility without user configurable keyboard shortcuts as a first-class citizen. I suspect this situation won't improve for foreseeable future. GTK maintainer's stance is "it's application developer's responsibility." "AdwShortcut*" widgets have no editing capability, and probably will not given the HIG's writing. So each application has to write each own keyboard shortcuts configuration mechanism, I guess. The code is not that complex or massive. It's just I'm disappointed.

Changes

16 changed files (+588/-30)