GNOME Bugzilla – Bug 104653
ctrl modifier should toggle move when dragging to another file system
Last modified: 2004-12-22 21:47:04 UTC
When dragging a file normally ctrl is used to toggle copy. When you drag a file from one file system to another copy is automatically toggled. In this case CTRL does nothing. It should 'un-toggle' copy in this case. ie. it should toggle move.
Usability ppl: Am i right in this assumption?
Hmm, my understanding was that the dnd modifiers were supposed to work a as absolutes, rather than toggles... i.e. Ctrl always forces a copy, Shift always forces a move, and Ctrl-Shift always forces a link. That's certainly how the old Motif Style Guide phrases it anyway (the only other reference I have handy at the moment), but the HIG is admittedly a bit non-committal...
Did motif have a similar behavior though, where move is activated automatically? If the toggles are absolute then we would also need a toggle for copy, which seem to me to be a lot more complex that having the toggle do the reverse in this case.
I just checked how this worked on CDE's file manager, which I'd assume implements Motif's drag and drop guidelines. Like nautilus, move is the default unless you're dragging to a different volume. And as I thought, Ctrl always forces a copy (even if the default is to copy anyway), Shift always forces a move (even if the default is to move anyway), and Ctrl+Shift always forces a link.
Hmmm, that makes it quite hard to move from one partition to another. It may be the way the CDE file manager does it, but I fail to see how having CTRL as a toggle could have negative effects.
Well, it's not just CDE, I've just checked and that's how it works on Mac and Windows too (using Option and Cmd rather than Ctrl and Shift, on Mac)... I just checked CDE initially since it was more likely to do it 'the Motif way'. I'd presume the rationale is consistency... if Ctrl toggles, you have to rely on looking at the pointer shape to know whether the thing is going to copy or move. If Ctrl always means copy and Shift always means move, you know what's going to happen without even looking at the pointer, and without having to compensate for whether you're dragging within or between volumes.
I disagree. I think Control should enforce a copy, no matter what the default action. To me, however, it is a problem that Shift doesn't work when copying between file systems (bug 120052).
I agree with michael.