The single menu made some vague sense back in the elder days when machines were slow and couldn't run many programs at the same time, but it has a whole host of problems:
- The Fitt's law justification for single menu dies a horrible, screaming death as soon as you go multi-monitor. The number of times I've wanted to do something with the menu and oops, it's on the other screen, and oops, my screens are different heights so the mouse comes in 16 pixels below the menu when it crosses the screen boundary... It doesn't sound like much, but it's one of those little UX warts that irks you every time it happens.
- Single menu also pretty much requires click-to-focus, which is why you can't have floating focus on the mac. Which is a deal killer for me. Actually, on the mac you get half-assed worst-of-both-worlds floating focus; the scroll wheel and swipe scrolling work in whatever window you're floating over, but all other focus is on whatever window you last clicked on. Which is why you will wind up constantly closing your work or IRC sessions when trying to close a tab in firefox. But I digress.
The point is, single menu + floating focus means that when you're trying to get to the menu of program A, if program B has a window between your mouse pointer and the menu then the menu changes before you can get to it. So you wind up having to thread the needle between windows to get your menu, assuming it's even possible. Or you have to put the mouse over the menu bar and then alt-tab to the menu you wanted. It's untenable, which is why they don't do it on the mac.
- Lack of floating focus means bad use of screen real estate. When I'm working on a screen that's smaller than the combined size of the windows I'm using, I tend to stack them so I can get at the active part without having to expose the rest of the window. For example, I'll put a terminal behind other things such that only the bottom few lines are visible; most of the time that's all I need to see or interact with, but if I get a compile error or something I can bring it forward to see what the problem was. You can't do that without floating focus.
- Single menu also means more context errors. If you're editing a bunch of images, for instance, in a menu-per-window system the menu attached to the image you're editing is the one you use to apply effects, save and so forth. There's an immediate, obvious connection between the two. With single menu, the thing you're affecting may not even be on the same screen as the menu, and you wind up double-checking a lot to verify that yes, the thing you're trying to do is being done to the thing you want to do it to. It's a modal interface, with all that implies.
- Single menu means a single point of failure as well. If something happens to that menu, you're potentially screwed unless you have a shell open. Many times on OSX I've had a program go into "beachball of boredom" mode, and when that happens, quite often it takes the menu with it. I can switch to emacs or bash and get some work done, but pretty much everything else relies on the menu not being wedged, and so is useless until the rogue program gives control back.
- Single menu means quite often (at least on the mac) you start a program and your only indication that it started is that the menu changed. Once the menu is decoupled from the window, many programs don't bother to open windows until you tell them to. XCode is a particular offender here; it takes a while to open on the mac I'm using, and when it does it usually takes me a while to notice, especially if i started several other things at the same time. (Yes, ok, on the mac you also get a little dot by the icon on the dock to let you know the program is running. Woohoo. Another 16 pixels of massive notification power.)
There are lots of other ways mac window management is a giant pile of suck (it's 2011 and still have no edge resistance on windows? no "bring window to this virtual screen? no axis-locked resizing? the list goes on...), but hopefully none of them are relevant to Unity so I'll cut my "mac window management is like a fire-ant enema" rant short.
The other thing I'll say is that with Apple announcing "full screen mode" for mac apps, I'm assuming they're keeping the single menu and planning on encouraging everyone to use full screen mode for everything, as if your mac was a big ipad. The reason for this is that otherwise there's a world of pain for them in making multitouch work on a full PC; what do you do if gestures span programs? Can two or more programs have focus at the same time? I expect they'll just declare that multitouch is only available in full screen mode.
The problem is, what this ultimately leads to for Apple is the iPhone model of computer use. One program at a time, everything else except the music player is asleep and taking no screen space. That's fine for someone whose interaction with the computer is clerical or entertainment, but for those of us who want to use computers as tools to do interesting things...
The TL;DR version: single menu is an anachronism from the 80s, and should be strangled and thrown in a ditch. Then nuked from orbit.
Copyright © 2018, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds