Popular Keyboard shortcuts (Was: RFC: KDE4, KMix and a public Mixer API)

Christian Esken esken at kde.org
Tue Oct 10 18:53:20 BST 2006

Am Dienstag, 10. Oktober 2006 11:29 schrieb Lubos Lunak:
> On Monday 09 October 2006 22:38, Christian Esken wrote:
> > Am Montag, 9. Oktober 2006 10:43 schrieb Lubos Lunak:
> > OK, actually this is a generic issue. There are some very popular Keyboard
> > shortcuts. Popular in the sense that many applications would like to hold
> > this global shortcut: XF86AudioRaiseVolume
> > XF86AudioLowerVolume
> > XF86AudioMute
> > XF86AudioPlay
> > XF86AudioStop
> > XF86AudioNext
> > XF86AudioPrev
> >
> > Problem 1) KKeydialog lets you assign a global shortcut that is already
> > taken by another application (obviously it doesn't work, but the user won't
> > get a warning). So the user assigns the "XF86AudioPlay" in his new shiny MM
> > Application and curses that they don't work - first impression is ruined.
>  Er, why? As long as only one application with that shortcut bound is running, 
> there's no problem.

But actually we very often have more than one (KMilo, KMix).

> > Problem 2) And if a user runs the KMix PanelApplet instead of the Mixer?
>  Solution 2) : There's no problem 2). The applet has that ability as well. And
> even if the user uses that applet and runs KMix to get a complete control, 
> then still the applet shortcut will work just fine.

Lets do a practical rundown: Shortcut is assigned in KMix, user then assigns the shortcut to another control in KMixApplet (yes, users do that). Suprise: it doesn't work. It is confusing for users, and I will receive yet another bug report. Doesn't make sense.
Same with KMilo: KMilo takes the keys by default for the Master volume. Then assign keys to headphone in KMix. Again it doesn't work.
You can do more complex scenarios like when you quit one appplication that holds the keys.

> > So we see that we actually have an issue. It cannot be discussed away.
> > If there is no generic solution, I will do a special solution for KMix,
> > MixerApllet and KMilo.
>  Yes. Assign the shortcut by default to KMix and KMixApplet, dump it from KMilo.

My idea is rather that all of these applications do not hold the global shortcuts at all. The shortcuts are instead held centrally (e.g. at kmixd-Server), and configured with any GUI of the users choice (KMix, PanelApplet, ...). After configuring the Shortcut informaton is transferred from GUI to the kmixd-Server via DBUS.

Is Unix ready for the Desktop? See http://www.kde.org

More information about the kde-core-devel mailing list