ML UI rationalization

Started by stevefal, January 29, 2013, 01:37:55 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


I think ML UI could be more straightforward, so here are some ideas what it could be like:

Audionut edit: seems imgur might be having some issues, here's another link to the gif from OP.
Steve Falcon


Nothing to say, it's perfect !


Weapon of choice:
600D, EF-S 18-55 ISII Premiere, Luminance HDR, Blender, Luxrender (


RenatoPhoto  |  EF 300 f/4, EF 100-400 L, EF 180 L, EF-S 10-22, Samyang 14mm, Sigma 28mm EX DG, Sigma 8mm 1:3.5 EX DG, EF 50mm 1:1.8 II, EF 1.4X II, Kenko C-AF 2X


You are not the first one with the attempt to fix it. All it needs is developer who actually can do the changes.

Check out this thread (more the visual part):
And this one (initially we discussed an implementation of themes, but it quickly ended up with a discussion about the usability problems and ideas to fix those):

You are absolutely right, MLs UI has many problems and needs to be fixed. ML simply doesn't look and feel like it is made for 'non-hackers'. There are many voices here on the forum that say, that the next mayor release should have a new UI - but it is allot of work. And all the devs are already working hard on new ports (which we have many of at the moment).

HD Cam Team

Very briefly since I'm from a cell phone:

This is a VERY important and helpful proposal to make ML easier and more intuitive to use, but please remember that the 5D Mark 2 does Not have a "Q" button.

HD Cam Team
Web: | Twitter: @HDCamTeam | Facebook: HDCamTeam


Steve Falcon


Quote from: SDX on January 29, 2013, 02:26:29 PM quickly ended up with a discussion about the usability problems and ideas to fix those.

All it needs is developer who actually can do the changes.
Yep, I figure it's worth a shot.
Steve Falcon


Some details

FocusedExample                    SET                   Q                      LR                    MENU          Main dial          D-pad V            D-pad H
tabs              (any) menu gets focus - change tab - move verticalmove verticalchange tab
menu              (any) <item action><item action><item action>tabs focusmove verticalmove verticalchange tab
picklistOverlay/Global Drawpick+exit<item action><item action>exitmove verticalmove vertical -
submenuDisplay/Advanced...<item action><item action><item action>exitmove verticalmove vertical -
documentHelp/About MLexit* - - exitscroll verticalscroll vertical -

Kinds of menu items:

Type              Example                       SET                      Q                       LR                   
choiceOverlay/Global Drawshow picklisttoggle defaultstep value
compositeOverlay/Zebrasshow submenutoggle defaulttoggle default*
nestingDisplay/ submenu - -
numericDisplay/LV display gain - toggle defaultstep value
actionDebug/Screenshotperform action - -
informationHelp/About MLshow document - -
Steve Falcon


Most ideas are very good. I've already implemented the bottom bar visual change and started to change the backend to get better separation of content from presentation (e.g. to use different fonts/colors for name and value, or for dropping of colon; now these are hardcoded and a menu entry is displayed as a single string).

However, there are a few things to keep in mind:

- Button layouts differ across cameras, but there is a common subset. We tried to make a list here:
- All cameras have SET, MENU, PLAY, DISP/INFO and ERASE.
- Most cameras have Q, but some don't; they use some other button. It's placed either on left on right side, so it feels weird for ON/OFF toggling. Canon uses it for opening setting menus, so current usage is consistent.
- Top scrollwheel is usable on most cameras, except for 500D.
- Only some cameras have a back scrollwheel (main dial).
- Wheels are not usable at all while recording. As weird as it sounds, some users are navigating the ML menu while recording (not me). There are some other rare situations when scrollwheels don't work (exceptions, not rules).
- DISP/INFO should display help. I think this is obvious.
- ERASE should open ML menu. Alternative: swap MENU/ERASE (open Canon menu with ERASE).  Users tend to spend a lot more time in ML menu than in Canon menu.
- Navigating with only the right hand is desirable (where possible). This is why Q opens and closes submenus, and not MENU, for example.
- Having to go focus the top bar in order to scroll through tabs doesn't make sense to me. It's OK for the picture style dialog, where you select one picture style, and then tweak settings. But here it would just slow down the navigation IMO.

So, there are some usability reasons for the current key scheme:

- A very common usage pattern in ML: quickly turn on and off the things that you use. Go to submenu for advanced settings (stuff that you don't change very often).
- Scrolling with the two wheels is very fast (and consistent with Canon menu).
- Canon menu requires 3 key presses to toggle a boolean. ML requires one.
- Most items with many choices are placed in submenus, where you can use the top scrollwheel to select them quickly. The rear scrollwheel always navigates up/down.
- To change something quickly, press Q then use scrollwheel. This is the reason for the edit mode (if there's no submenu, Q + wheel is still consistent with the other things that have submenu).
- When scrollwheels don't work, arrows can serve as backup (LEFT/RIGHT keys will always do the same thing as top wheel, for example).

Some more previous work to review:

When you know ML (and anyone
will in a short time), it's quickest to reach settings with both
wheels and then cycling through the values with SET, you don't have to
take your thumb off the back dial and don't need to use the horrible
joystick buttons. If there are many values, you can use PLAY to cycle
the other way around. The submenus are very nice, esp. on related
settings like the bitrate menu, but shouldn't replace the good ol'
ways(tm) :-)

Reserve Set to only turn features on/off from the main menus.
Reserve Q button for opening/closing submenus (is there any scope for nested submenus?, maybe Play should be used to exit submenus in this case).
All options for a feature moved into the sub menu, where they are adjusted with L/R cursor (or enabled/disabled with Set).
Trash should exit all ML menus with a single click.

Overall, I like the graphical tweaks and the idea of incremental changes, but I don't think it's a good idea to break the old habits. Also we should not rely on scrollwheels - they are nice for making things faster, but there should be a backup method (plain arrow keys).

P.S. you can already try the menu without icons, and with ON/OFF labels grayed out, and with movie features grayed out in photo mode etc, with this patch. It's very rough, this change requires major rewriting of the menu backend.


Thanks. I think having Q is dependable going forward, and ML can use it any way it wants. The idea with focus on tabs is that it solves other things. Joystick could also change tabs all the time. It could be like this:

Type                SET                   Q                      (depends)             LR                   
choiceshow pickliststep valuetoggle defaultchange tab
compositeshow submenutoggle default*toggle defaultchange tab
nestingshow submenu - - change tab
numeric - step valuetoggle defaultchange tab
actionperform action - - change tab
informationshow document - - change tab

QuoteI don't think it's a good idea to break the old habits.
I think breaking old habits is ok if the new habits improve things.
Steve Falcon


How it is now:

Type                     Example                           SET                     Q                        LR                   
choice (var A)Overlay/Global Drawstep value - change tab
choice (var B)Display/LV brightnessedit modeedit modechange tab
compositeOverlay/Zebrastoggle defaultshow submenuchange tab
nestingDisplay/ submenushow submenuchange tab
numericDisplay/LV display gainedit modeedit modechange tab
actionDebug/Screenshotperform actionedit modechange tab
informationHelp/About MLshow documentedit modechange tab
Steve Falcon

HD Cam Team

(Again briefly from a cellphone, sorry if| missed something):

. IMO the more similar behavior (as much as possible) between Canon menu and ML menu, the much better for intuitive experience, especially helpful for new or not master ML users

. It's necessary to give alternative to Q button and rear wheel (etc.) that Some Cameras don't have (like I said 5D2 doesn't have Q button)

. Something like "My Favorites" tab /menu (like Canon's) would be extremely useful (if possible and yet not implemented). I know this would require work. Just an idea To have all the featunes you use most in one single Tab.

HD Cam Team
Web: | Twitter: @HDCamTeam | Facebook: HDCamTeam


QuoteI don't think it's a good idea to break the old habits.

I would have to disagree with this as well. Like Steve said it's not a great idea to do this needlessly or gratuitously, but any change for the better will eventually be accepted and will only serve the betterment of the tool.

Case and point: Blender (the cg app)
The interface is notoriously horrid. It breaks all conventions and native interaction models. Which in itself is a big UI/UX no-no.   This causes the learning curve to be very steep and hard on new users. It also causes old users to be vehemently anti anything new even if it makes things easier int he long run. It's almost become a point of pride in the Blender community that you survived the learning curve. Even if that means that in Blender an action may take 3-5 steps when in another program it may take one. Blender is an immensely powerful tool, and it's free. However, it goes largely unused and overlooked because it's interface is so foreign and hard to use. It's a shame really. The bigger shame is that the developers have taken on this idea that they can't change things now. That it's too late and would upset too many users. That breaking old habits, even if it means many more would adopt the software and support it, is not a good idea.

Facebook is a great example of what to do. They redesign and come up with what they consider a better experience (and in many cases it is more immersive and addicting, which serves them more than you) and people flip out and cause a huge stink... and a week later no one even remembers.

Change is hard, but if it's for the better people will support it.

Now finding the development bandwidth to implement those changes... that's a different story.


Agree that SET button have too many use, me too don't understand in full why some item use set to scroll values and other go in edit mode to change them, probably number of value?

Info menu can be considered an action like screenshoot IMHO

I'll suggest that SET should not go in edit mode, also we have a consistent Q alternative for camera without it. PLAY for going into edit mode.
This an idea

Type                     Example                           SET                     PLAY                        LR                    DISP/INFO         MENU         
var A, var B & numericOverlay/Global Draw etcstep valueedit modechange tabcontextual helpHide thing mode
compositeOverlay/Zebrastoggle defaultshow submenuchange tabcontextual helpHide thing mode
nestingDisplay/ submenushow submenuchange tabcontextual helpHide thing mode
actionDebug/Screenshotperform actionedit modechange tabcontextual helpHide thing mode
I'm using ML2.3 for photography with:
EOS 600DML | EOS 400Dplus | EOS 5D MLbeta5- EF 100mm f/2.8 USM Macro  - EF-S 17-85mm f4-5.6 IS USM - EF 70-200mm f/4 L USM - 580EXII - OsX, PS, LR, RawTherapee, LightZone -no video experience-


Instead of edit mode, you can just show a pickbox for items that have more than two choices. That can be seen as a mini submenu.

The discoverability issue is already addressed by placing button hints in the selection bar.


QuoteInstead of edit mode, you can just show a pickbox for items that have more than two choices.
I agree. I think it should show for two choices too, because I don't know there are only two, and I think opening is what people expect from Canon. Also you can have help text for each.
Steve Falcon


I don't expect SET to open things, I expect SET to do the most commonly used action.

Think at zebras. In normal usage, you just want to turn them on or off. The most obvious choice for this is SET.

When you configure the parameters, you don't do this all the time. Once you are happy with those settings, you can forget about them.

So, why not optimize for the most commonly used scenario?


QuoteSo, why not optimize for the most commonly used scenario?
I think it's best to optimize for both.
Steve Falcon


Quote from: HD Cam Team on January 30, 2013, 09:52:23 AM
It's necessary to give alternative to Q button and rear wheel (etc.) that Some Cameras don't have (like I said 5D2 doesn't have Q button)
Steve Falcon


Quote from: scrax on January 30, 2013, 04:10:42 PM
Info menu can be considered an action like screenshoot IMHO
True but you have to exit it too.

Steve Falcon


Steve Falcon


Nice design for pickbox, I like it. Should it also be used for numeric toggles? (e.g. audio gain, ISO)

Please show a mockup of navigating zebras (or focus peaking, or histogram). I'm still convinced that, for this kind of items, the submenu is not the canonical path (under normal usage you just turn them on and off). This is more of a right-click (context) menu.

Usability: prompting the user with so many tuning parameters when he just wants to turn it on/off is not a good idea IMO.


one hint from my side:
please, please do not take canon user interface as reference.
there are so many different keys a user has to press.

for entering submenu a, you have to press SET, for the next you have to press INFO..
the next submenu is opened with M.Fn. some values are changed with wheel, for the next you need cursors.
it is so inconsistent, so i would not take it as reference :)
Help us with datasheets - Help us with register dumps
magic lantern: 1Magic9991E1eWbGvrsx186GovYCXFbppY, server expenses: [email protected]
ONLY donate for things we have done, not for things you expect!