Hi!
Sorry for the late response... I'm covered with stuff to do lately.
To my understanding we are mixing these different issues:
1) whether the global shortcuts should have or not priority over local shortcuts. To my understanding that's what operating systems do. You cannot override alt+tab and if you intend, it will just not work. If any application can override alt+tab, the system will feel inconsistent for the users. So global shortcuts have priority with this intend: Not let the tools mess with what Pharo has decided the global shortcuts should be.
2) which are the actions that should be available globally though a shortcut. This deserves for sure a different discussion than 1). Should we put all tools in there? The more we put, the more difficult is to put shortcuts locally in tools. In any case I think this is orthogonal to 1).
3) are the shortcuts we chose for the tools the right ones? I think the "prefixed" shortcuts chosen for the tools were thought as a kind of namespace for the shortcuts. Again, I find this orthogonal to 1).
4) About the collision issue. First, it is an issue that appeared when people started to use keymappings :). The original intent was to let the user manage the collisions, because I find there is not a perfect solution.
�� - if we make first single, then complex matching only local to a morph, then a complex match from a child would override a single match from a parent.
�� - if we make first single, then complex matching *all over the hierarchy*, we may find a single match from a parent overriding a complex shortcut of a child.
A second issue, partially related to the resolution strategy, is the Set that should not be there because it provides a random ingredient. However, at the same time it makes you think about not creating collisions in the same morph :). Actually, if you remove the randomness and configure a morph with:
��cmd+a => do something
��cmd+a, cmd+b => do other something
Either the first or the second will never be executed depending on the strategy you choose (first single then complex, or the opposite). So I find this a buggy configuration, randomness or not randomness.
Cheers,
Guille