Shortcuts: Absolute behavior for tapping, holding, and mixing key presses
Please look my message here, and understand it, because there was a lot of work that went into all kinds of shortcut confusion resultant of the new behaviors for the SUPER key. ..and there still is. These have a fairly simple solution.
SUPER is primarily a shortcut key. No particular shortcut should interfere with that overall capacity. Not Launcher, not Dash, not the Shortcut Hints Overlay -- shortcuts, particularly simple ones, are too valuable.
These simple, logical rules make what we're trying to do possible, but also avoid interfering with other shortcuts:
* Unity and the Hints Overlay should not stop other shortcuts from taking effect, nor prevent people from changing default shortcuts.
* A specific key combination summons the Hints Overlay (In this case - holding 'SUPER'). If any extra keys are pressed, suppress the Hints Overlay until *no* keys are pressed.
* If there is mouse activity, suppress the Hints Overlay until *no* keys are pressed.
* A key tap is only considered a tap if other keys are not pressed (this may not still be an issue)
..by "suppress", I mean "if it is visible, hide it, and if it is not visible, don't show it."
This has the benefit of being simple, and of keeping the useful Hints Overlay behavior, while also getting out of the way of the user (thus making a lot of people happy) -- and it continues to do so in the future if the hints overlay is extended to other modifier keys.
Fixes such cases as:
* User remaps SUPER+TAB to use the switcher.
* User uses SUPER+button4 and SUPER+button5 (mouse wheel) to zoom in and out of the screen.
* User uses SUPER+kp1-9 to place windows
* Any application uses a SUPER+click/
* User uses super + button1 to draw on the screen (using compiz annotate plugin) to create a marked-up screenshot
* (!) Avoids inconsistent behavior when using CTRL-SUPER shortcuts - as it is, sometimes the Hints Overlay comes up, sometimes it doesn't. It depends on which modifier is hit first (!)
..and, of course, it frees up the general usage of the 'super' key for remaining key combinations.