collapse Table of Contents
  1. openSUSE 10.2 Windows Key Solution - Jonathan Pryor's web log
    1. openSUSE 10.2 Windows Key Solution

openSUSE 10.2 Windows Key Solution - Jonathan Pryor's web log

« openSUSE 10.2 Windows Key Workaround | Main | When Comparisons Fail »

openSUSE 10.2 Windows Key Solution

Celso Pinto has told me the solution to my Windows key woes:

gconftool-2 --type bool --set /apps/metacity/general/enable_windows_keys "false"

That is, set the GConf key /apps/metacity/general/enable_windows_keys to false, the documentation for which is:

If true, then pressing the Windows flag keys will cause the panel's main menu to appear.

(This obviously proves that I didn't look hard enough in GConf.)

The downside is that this isn't exposed in a UI anywhere. Which, on reflection, is a good thing -- it shoudn't be exposed, as the key shouldn't be necessary!

<rant>

The presence of the key is a hack, plain and simple. I like the idea of having the Win key display the panel's main menu. It's just like Windows (which isn't always a bad thing). The problem is execution: under Windows, the Windows Start Menu isn't displayed until the Win key is released, i.e. on key-up. This allows using it as a command modifier, e.g. Win+d (show desktop), Win+r (run command), Win+e (open Explorer), and the Start Menu is never displayed for any of these shortcuts.

The problem with the Metacity implementation is that the main menu is displayed on key-down, preventing it from being used as a modifier.

The simple solution? Follow Windows practice, and only display the panel's main menu on Window key-up, and only if no other keys are pressed when the Win key is released. This allows Win+r, Win+d, Win+F1, etc. to all be valid shortcuts, while Win (press + release) can display the main menu, and it all Just Works, without the requirement to set a crappy GConf key.

</rant>

Posted on 04 Jan 2007 | Path: /development/ | Permalink
blog comments powered by Disqus