Mail 2.0: Poor interface for expanding/collapsing threads

Posted by Pierre Igot in: Mail
April 4th, 2006 • 3:21 pm

As a general rule, I like my e-mail messages to be grouped in threads, in spite of the occasional shortcomings of Mail’s threading algorithm.

But what I definitely do not like very much is the user interface for expanding/collapsing threads in Mail.

First of all, let’s examine what happens when you try to do this with the mouse. If the thread is currently collapsed, it appears as a single line with a right-pointing triangle on the left:

Collapsed thread in Mail

If you want to expand the collapsed thread with your mouse, you have two choices. You can click on the triangle itself once. But the triangle is such a small target that this usually requires too many micro-adjustments with your mouse before you can click on that target. And, like the triangle in the Finder in list view, and unlike the triangle in a program such as Pages, there is no “mouse-over” effect here when the mouse is near the triangle to reflect the fact that the triangle can be clicked on as a button and to indicate that the active area actually also includes some of the white space around the triangle itself. (In other words, your mouse pointer doesn’t need to be exactly on the triangle, but it has to be quite near it.)

A much better option is to double-click anywhere else on the line. This too will expand the thread, and, obviously, the entire line is a much bigger target than the triangle itself.

To be more accurate, both options (the click on the triangle or the double-click on the line) actually do two things: They expand the thread and they select the last message in the thread or, in case there are still unread messages in the thread, they select the top-most unread message in the thread. Which brings me to the first problem with these mouse-only options.

The first problem is what happens if you actually double-click on the triangle itself (rather than anywhere else on the line). Mail not only expands the thread, but also jumps to a specific message in the thread and selects/opens it. Which message does Mail select for this behaviour? At some point, I thought that it was the last-viewed message in the thread, but further testing proved me wrong. In fact, further testing seems to indicate that the message selected in the thread and opened when you double-click on the triangle itself to expand the thread is rather unpredictable. It seems to depend on whether there are new, unread messages in the thread or not, but it’s not the last message or the last unread message, as noted above. It’s really weird. I have no idea exactly how it works.

The second problem with the mouse options for expanding a thread is that they are not easily reversible. You see, when you expand a thread, unless your message list is pretty short and your Mail viewer window is pretty big, Mail automatically scrolls up/down the message list to reveal the full list of messages in the thread. This means that the line with the triangle is a moving target. So if you want to close a thread after expanding it, you have to move the mouse again to reach the line with the triangle again, which is now in a different location. (This is not the same as what happens in a Finder window in list view. In list view, when you expand a folder, the Finder does not scroll up/down to reveal the contents of the expanded folder. The list doesn’t move and you can click on the triangle again to close the folder without having to move your mouse pointer.)

In addition, there is no obvious alternative to clicking on the triangle for closing an expanded thread. You cannot double-click on the expanded thread’s heading line to collapse the thread. You could double-click on the thread’s heading line when the thread was collapsed to expand it, but the reverse is not true—even though it would make sense.

In fact, as far as I can tell, double-clicking on the thread’s heading line when the thread is expanded does not do anything special. A double click on the heading line does exactly the same thing as a single click, i.e. it selects the entire thread. This is disappointing. It would make perfect sense to use double-clicking on the heading line of an expanded thread to collapse it. It would be intuitive, since double-clicking on a collapsed thread expands it, and it would actually make use of the double click as a shortcut for something useful.

There is, in fact, one other alternative for collapsing an expanded thread with the mouse: you can put your mouse somewhere underneath the down-pointing triangle, in the left-most column, next to any one of the messages in the thread. This will cause a special icon with two triangles to appear:

Icon for collapsing a thread

Clicking on this icon will actually collapse the entire thread. It works for any message in the thread, not just the currently selected message (for which the icon with two triangles stays visible, as can also be seen in the picture above).

But, again, this is not exactly obvious and, more importantly, it’s a pretty small target. If you want to collapse an expanded thread with the mouse, you have to target this left-most column in the message list, which is a pretty narrow piece of screen real estate, and is not the most natural location for a button to collapse the thread.

What about thread browsing with the keyboard?

Well, things are a bit better. When a thread is collapsed, if the thread heading line is selected, you can simply press the Right cursor key to expand the thread. This will both expand the thread and jump to a specific message in the thread. (Again, I am not sure exactly what rules Mail uses to determine which message to select here.)

This automatic selection of a specific message in the thread when you expand the thread might sound like another annoyance, but in fact you do not need to move the selection back to the thread heading line (with the Up cursor key) in order to be able to reverse the operation and collapse the thread. Regardless of which message in the thread is currently selected, pressing the Left cursor key at any time will automatically collapse the entire thread again.

So things are better with the keyboard than with the mouse, because at least the thread expansion is easily reversible. However, there are other problems with message threads and the keyboard in Mail, which I will describe in another post later on.


3 Responses to “Mail 2.0: Poor interface for expanding/collapsing threads”

  1. Steve Jobs says:

    It must make you feel smart to continually pick apart other people’s hard work. Can we some some your fine work?

  2. Pierre Igot says:

    You can some some my work any time, Stevie Stevie.

  3. Hawk Wings » Blog Archive » Mail.app: Threading, keyboard annoyances says:

    […] He details several shortcomings in the way that Mail presents the user interface for threaded messages and in the method it uses to auto-select a first message to display when any given thread is expanded. […]

Leave a Reply

Comments are closed.