(This is a reply to the discussion about full-row selection at Raymond Chen's Old New Thing. For some reason I can't post the reply normally; I think part of the text is tripping up the blog software. So I've put the reply here and just posted a link in the comments.)
"All right then, how would you have added full row select?"I'll list some ideas/thoughts but, TBH, I probably wouldn't have made full-row-select the default (let alone mandatory if you don't know an obscure registry setting) in the first place.
Does the desire for full-row selection come from:
People wanting to be able to click anywhere on a row to select things.
People wanting a larger selection target, especially for small filenames, but not necessarily the entire row.
People wanting a visual highlight so they can see across a row without getting mixed up with adjacent files.
Assuming one of those (or a mixture of them) is true:
If it's #1 then I would've made the left button work as it does now, and made the drop targets and right button work consistently with that.
I think it's important for what appears to be a single UI object -- the row which currently highlights when the mouse is over any part of it -- to actually be a single object for both mouse buttons. It's confusing that, unlike left-clicks and drag & drop, right-clicks "fall through" some columns and not others. It's also confusing that, while right-clicks on a file will select the file, whether or not a right-click is interpreted as being on the file depends on whether or not the file is already selected.
With that implementation, right-clicking the empty space is a pain. But so is left-clicking the empty space and dropping into the empty space, just as it is in Vista. You seem to accept the trade-off that people will have more difficulty finding suitable "empty space" for the left-click and drops, so why is the right-click empty space action a special case?
(I think that "empty space" difficulty with all three actions is a good reason not to make full-row selection the default in the first place, but if you're going to implement full-row-selection then I think that's how it should work.)
With #1 I think you also either need an easier way to deselect-all (e.g. a toolbar button, though those seem to be out of fashion in Explorer these days) or you need to remove the need to deselect all. For example: Right now Explorer will not show you summary information (e.g. total number of files) about the current folder if anything is selected, despite there being plenty of space to show it. If it always showed that summary info (e.g. reporting info like "X / Y selected" instead of just "X selected") then I can't think of any reason, except for OCD :-), to need to deselect-all.
If it's #2 then you could make the whole Name column count as the file, for all three actions (left click/right click/drag & drop) while leaving the other columns counting as "empty space" the way they did prior to Vista. People then have a good sized click target that isn't dependent on the length of any filenames, but they also still have easy, intuitive and consistent-with-the-past access to the empty space. Visual cues which make the name column hot when the mouse is over it would make it obvious that clicking there is special and that the whole name column is a UI object, not just the name within it.
The thing that #2 lacks is the ability to select a file by clicking on a detail column (e.g. to select the file with a certain Comment by clicking on the comment). If that's a requirement then you've got to go with #1, obviously, and I think then you've got to accept the trade-off that the empty space is now hard to find.
If it's #3 then the mouse behaviour can stay the way it was in XP and you just need some visual effects which highlight the rest of the row of the selected files and/or the file under the mouse. (That highlight need not be identical to the selection highlight.)
Obviously #2 and #3 can be combined, too.
FWIW, after writing this I installed Windows 7 and I've found the right-click exception confused me several times while trying to manage stuff in the network connections list. Even though I know what the right-click rules are I kept being surprised that a different context menu kept appearing when I right-clicked things that weren't already selected in the "wrong place."