John Gruber discusses the behavior of Shift-Selection in Mac OS X and various applications. I have to admit… he’s right. And I use the unanchored selection style in MUPhotoView (and therefore also in Sniper). I never really considered what the “right” behavior was when I wrote it - but, there may have been some cognitive dissonance there.
Why cognitive dissonance? Well, I think the anchored selection style is more difficult to implement, so I just never considered it. Unanchored selection is just easy (in any of the key event methods: moveLeft, moveLeftAndModifySelection, etc.), just get the current selection, and expand it in the desired direction. The lines of code that handle all the keyboard control in MUPhotoView are small and all almost identical, with just minor changes to handle direction.
But anchored selection requires knowing what the original selection was. True, this isn’t a huge implementation hurdle, but as I was rushing to get MUPhotoView and Sniper done - and to work on bigger issues - it was something I just didn’t bother with. And that’s not a good thing - in true Apple style, I should have taken a bit more time and done it right.
“In true apple style” — What? You mean like with the current unanchored behaviour?
Sometimes, even Apple doesn’t pay attention to the details that it should… but then again, sometimes they think of details you never thought mattered.
Apple usually get it right. But unanchored selections are one of the rare instances they don’t. Has it always been this way I wonder? I switched back in Jaguar and it was one of the first irritations I found with an OS otherwise so comprehensively superior to what I’d used before.
Interesting … I just tried System 7.5.3 on Mini vMac out of interest to see what was done back in the old days. And to my surprise there is no such thing as keyboard based expanding selections in Finder … holding shift does nothing as the cursors just move to a different file in all the views. I also noticed that shift+click had the behaviour command+click has now. Wonder when the current behaviour was brought in then. I have no Classic installed so can’t investigate for now.
I also noticed that shift+click had the behaviour command+click has now. Wonder when the current behaviour was brought in then.
The behaviour was changed when context menus were introduced in OS 8. This is when the control key was used for right clicking and couldn’t be used for selecting anymore.
I think the current method is better for users who have to work in Windows, too, because shift stays the same and control is most often replaced by command anyway.
Indeed. The System 7 way seems pretty odd to me, it’s just that I expected the unanchored keyboard selections to have come from back then as they too are strange to any user just arriving at OS X.
Did it come from NeXT … my second guess? Surely no one invented this just for OS X.
PA must have misread John Muir’s comment somewhat. The change in file-selection modifier keys from shift-click to cmd-click occurred when Apple switched from OS 9.22 to OS X. In OS 8 and 9, you still have to use SHIFT.