Well... after considering all the previous proposals and arguments, I'd settle for:
-
Windowed submenus (with up to 11 items, just like full-screen ones).
-
Only one level of submenus (see my links from ml-devel for rationale).
-
SET for most used action: ON/OFF, pickbox for 3+ choices, edit mode for ISO & friends, run action. Fallback to submenu only if there's nothing else to do.
-
Q (or equivalent):
toggle submenu (advanced settings menu, think of it as right-click). Maybe fallback to pickbox or edit mode.
-
Zoom In: edit in LiveView. Maybe the LiveView button can do the same (should be more obvious).
-
MENU goes back (close submenu, cancel edit mode). Fully optional, just for consistency with Canon menu.
-
LEFT/RIGHT always does the same thing as
top scrollwheel (navigate or edit).
-
UP/DOWN always does the same thing as
rear scrollwheel (navigate or edit). Scrollwheels are just accelerators.
This behavior is implemented in current trunk (
4f4cf19c3177).
Any objections?
If you want to do A/B testing and try SET for submenus, Q for ON/OFF and so on, feel free to do so, but implement the test code yourself. I'll just optimize the current keybinding scheme and layout, which I think it works best for power users.