PAPERCUT: Filezilla user Interface's behavior when a file/directory is dragged onto itself.
|Reported by:||Aleksandar Kovac||Owned by:|
|Keywords:||papercut, user interface, redundancy, inconsistency, GUI||Cc:|
|Component version:||Operating system type:||OS X|
|Operating system version:||Mountain Lion|
Dragging a file or a folder onto itself in local and remote filelists and tree-views results in inconsistent behavior from FileZilla.
a) Behavior when dragging directories in tree views:
REMOTE TREE VIEW: Dragging a directory onto itself in remote tree-view: "Message: A directory cannot be dragged into one of its subdirectories."
LOCAL TREE VIEW: "Error 13: permission denied" when dragging a system folder and "Error 22: invalid argument" when dragging a "regular" folder.
b) Behavior when dragging directories in filelists:
REMOTE FILELIST: Dragging a file onto itself: "Message: Source and target of the drop operation are identical". Dragging a directory onto itself: "Message: A directory cannot be dragged into one of its subdirectories."
LOCAL FILELIST: Dragging a file onto itself: nothing happens (this is expected behavior). Dragging a directory onto itself: "Error 22: invalid argument" or "Error 13: permission denied", depending on permissions.
When a file or directory is dragged onto itself error message boxes don't have to appear at all. Dragging a file or a directory onto itself in any situation should not result in any feedback from from FileZilla. i.e. FileZilla should ignore any attempt to drag a file or a directory onto itself.
I believe that the suggested behavior is common across many windowed platforms that use tree-views and file lists for file management. Dragging a file onto itself can be considered involuntary or accidental action. This kind of accidental action is especially common with users using pen tablets where a click with the pen tip often is accompanied with some dragging motion.
Additionally, removing the message/error boxes would streamline the interaction for the user a little, and also reduce a couple of GUI points that demand translation and maintenance.