Move/Copy - action in parent path length order

Have a suggestion for "Everything"? Please post it here.
Post Reply
meteorquake
Posts: 383
Joined: Thu Dec 15, 2016 9:44 pm

Move/Copy - action in parent path length order

Post by meteorquake »

This is sort of a bug, in that the results currently can be rather undesirable.
If you drag files to a new location and they are a mixture of folders and files with some of the files in the folders selected - which is easy to do without thinking in a program such as this - the action needs to perform the move on the items in order of parent path length, shortest first. This will preserve the files in their correct folder structure, otherwise files in a subfolder that is also moved when processed first (before the subfolder) will end up at the base of the target rather than in the subfolder.
Just did that a moment ago and had to work to fix the result :)
(I anticipate there would be a similar issue with copy though there you would have the additional issue of files duplicated into different places; in doing them in parent path order I'm sure they would also benefit from noting folders copied to avoid a second effort on files and subfolders that had been copied via their folder copy, and then after the move dispensing with the folder list so made - with a move the file at least will disappear on their folder's move so only get moved once even though to an unintended place)
Cheers, David
void
Developer
Posts: 15354
Joined: Fri Oct 16, 2009 11:31 pm

Re: Move/Copy - action in parent path length order

Post by void »

For some applications it is important that the order dropped is the same as the order displayed.

For example a media player.

I will consider an option to sort the dragged files by path.
Thank you for the suggestion.

The Everything Advanced Move (Edit -> Advanced -> Advanced Move to Folder) will sort by path before moving your files to help prevent this issue.
meteorquake
Posts: 383
Joined: Thu Dec 15, 2016 9:44 pm

Re: Move/Copy - action in parent path length order

Post by meteorquake »

An option would be great, I'll certainly switch it on.
My suspicions are that "on" should be the default given how the issue can cause a lot of problems, not just with copy/move but also 7z/zipping files (which the advanced move/copy feature doesn't address, and in addition the problem may hit as a surprise for someone just moving files), whilst in something like a media player (foobar2000 at any rate) I would generally sort them within the media player - although there could well be programs where drop order is important since for the most part Everything is bulk sorting I'm not sure it wouldn't usually be as easy to perform the sort in the recipient program, but at any rate I'm thinking any issues are more significant for move/copy/zip/7z. But, maybe others would suggest the default should be off after all.
For an intelligent approach, perhaps it might work to prescan the items dragged to see if there are folders selected with subitems to them also selected, and when that is the case perform a path-type sort, and when not, drag in the Everything order. Given it's a user-drag, I think this would generally be instantaneous and not noticeable, since the user action of dragging and the actual transferral of items generally would take much longer than the scan to decide the method employed.
Without that intelligent approach, an extra idea to throw in is that whatever the option is set as, a right-drag-and-drop could provide the alternative as "Move in Everything(/Path) Order" (the wording depending on option setting), and also "Copy in... (ditto)" - or perhaps a way to easily toggle the option on/off, such as under the Advanced menu.
That's all I can think of for the question, hopefully useful in weighing up what to do.
David
therube
Posts: 4610
Joined: Thu Sep 03, 2009 6:48 pm

Re: Move/Copy - action in parent path length order

Post by therube »

If you drag files to a new location and they are a mixture of folders and files with some of the files in the folders selected
Where are you dropping to?
Another directory location, or into some other application?
If the latter, which?
For example a media player.
Precisely why I d&d from Everything (into mpv.net).

Though actually someone said, that if you d&d from Windows Explorer & start the drag with focus on the first file, they'll be dragged as wanted. (Otherwise, not.) [I have not tested.]
meteorquake
Posts: 383
Joined: Thu Dec 15, 2016 9:44 pm

Re: Move/Copy - action in parent path length order

Post by meteorquake »

Another directory location. As mentioned, also causes an issue with 7zip. Basically I would expect anything that recurses the dragged folders will experience the issue.
The issue arises because you don't always think about how the search results have been populated. For example you may be in Subfolders view of the Folder bar and acting as if you're in a plain direct children only list - partly a hark back to using Explorer for so long where the view is always direct children, and partly because you jump around between subfolders view and not and sometimes forget you're in subchildren view, especially when you are working with thumbnails as I do a lot and so don't see the folder paths against items. It can also happen with the result of a search. It's one of those problems that's unlikely for most people to foresee theoretically, let alone always remember without a lapse.
d
void
Developer
Posts: 15354
Joined: Fri Oct 16, 2009 11:31 pm

Re: Move/Copy - action in parent path length order

Post by void »

For now, please try sorting by path before drag-dropping
-or-
Select files only or folders only.
Post Reply