A Dim View of Menus

If all of a menu’s commands are unavailable (dimmed) at the same time, dim the menu title. Users should still be able to open a dimmed menu to see its contents.

Aqua Human Interface Guidelines: The Menu Bar and Its Menus

If all of a submenu’s commands are unavailable (dimmed) at the same time, dim the submenu title.

Aqua HIG: Hierarchical Menus (Submenus)

For most applications, if no windows are open or on screen, only the application menu, File (or equivalent), and Help should be available and displayed as standard fully saturated black text. Assuming none of their contained commands are usable in this context, the Edit, View, and Window (unless there are minimized windows) menu titles should be dimmed.

Why don’t most OS X developers implement menu title dimming? Apple’s own adherence to these guidelines is less than stellar (see iCal, iPhoto [both of which have the View menu in the wrong place], iChat, Mail, Preview, and Address Book for proof), so I’m not surprised that third-parties have not stuck to it. If there is some technical reason that it is difficult to do, it is understandable that developers would invest their resources in more obvious and/or important issues.

iTunes is one of the only applications I know of that implements top-level menu title dimming (it has no submenus to dim), which I think is unfortunate given the potential benefit to users — quickly focusing their attention on the commands that are available in the current application state.

Published by

Daniel J. Wilson

I am a designer, drummer, and photographer in Brooklyn, NY.

3 thoughts on “A Dim View of Menus”

  1. To answer your question about the technical aspects of menu validation, essentially the way it works for Cocoa applications is that each time through the event loop (in other words, each time an event is triggered by a mouse click or whatever), the target object for each menu item is asked whether the menu item is currently valid. This is *not* done for entire menus, however, which would explain why none of the Cocoa apps you mention actually adhere to that guideline (iTunes is a Carbon app, and Carbon apps have a different way of handling menus). It is possible to do what you’re talking about in Cocoa, it’s just not part of the “normal” way of doing things.

    I never thought about it (I wasn’t aware of the guideline to be honest), but you bring up an excellent point. I’ll file a bug suggesting that Cocoa menu validation should also handle whole menus.

  2. Thanks for the info! I’d wondered if it was simply that applications (Cocoa in particular) just didn’t automatically dim unavailable menu bar and sub-menu titles. Menu dimming is a small thing, but when it is done properly it can make it a lot easier to find commands that are usable at a given point. I’ll send in a comment about it as well.

    Your unawareness of the dimming guidelines gives me another idea! How about HIG syndication feeds?

Comments are closed.