Opened 12 years ago

Closed 10 years ago

#1420 closed enhancement (fixed)

Copying a folder with the same name as an existing folder should offer the option to merge both folders

Reported by: scottmc Owned by: anevilyak
Priority: normal Milestone: R1
Component: Applications/Tracker Version: R1/pre-alpha1
Keywords: Cc:
Blocked By: Blocking: #3171
Has a Patch: no Platform: All

Description

If you drag a folder with the same name as an existing folder but with different files in it, the destination folder will then be completely replaced by the new folder, deleting anything that you might have in the destination folder. Not sure if this was the intended result or not. I would think not, but the warning message you get does say it will "replace" it. Attached are three screen captures, showing the source and destination folders before, during and then after. Notice the "my-very-important-files" folder is gone after this action is performed.

Attachments (4)

step1.png (55.9 KB) - added by scottmc 12 years ago.
step2.png (67.8 KB) - added by scottmc 12 years ago.
step3.png (58.5 KB) - added by scottmc 12 years ago.
Tracker.FSUtilsFixes.patch (6.0 KB) - added by anevilyak 10 years ago.
preliminary testing patch

Download all attachments as: .zip

Change History (15)

Changed 12 years ago by scottmc

Attachment: step1.png added

Changed 12 years ago by scottmc

Attachment: step2.png added

Changed 12 years ago by scottmc

Attachment: step3.png added

comment:1 Changed 12 years ago by stippi

Summary: Copying a folder with the same name as an existing folder deletes files unexpectedlyCopying a folder with the same name as an existing folder should offer the option to merge both folders
Type: bugenhancement

The current behaviour is "correct", ie intended, you even get the warning what will happen. But I understand it is not always the desired behaviour. Tracker should offer a third option to "merge" or "update" the target folder contents. Adding new files from the source folder and replacing existing files if the ones from the source folder are newer. I am turning this ticket into an enhancement since it is not really a bug.

comment:2 Changed 12 years ago by stippi

Component: - General- Applications/Tracker

comment:3 Changed 11 years ago by scottmc

Just noticed this on BeTips server: http://betips.net/1997/09/09/dont-overwrite-existing-folders/ So it was "supposed" to be changed in R5, but I guess it didn't make it. I really think this should be addressed in R1.

comment:4 Changed 11 years ago by aldeck

I'd call that one a bug! At least it will be a bad joke for most users :) I mean, 99% of the time you want the folders to merge, i don't really see why replacing is the default. Also it would be more consistent with other operating systems.

And guys, it's even the first issue addressed by Sikosis's Haiku Tips, and feels really embarassing (see Haiku Down Under video at the end)

comment:5 Changed 11 years ago by axeld

Well, BeOS survived long years with this "feature", so I wouldn't go as far to call it a bug. But in any case, changing this would be very welcome :-)

comment:6 Changed 10 years ago by aldeck

Owner: changed from axeld to aldeck
Status: newassigned

will give it a try.

comment:7 Changed 10 years ago by aldeck

Owner: changed from aldeck to nobody
Status: assignednew

lacking time, i'll have a look again in a few weeks if no one takes it :)

comment:8 Changed 10 years ago by anevilyak

Owner: changed from nobody to anevilyak
Status: newassigned

Will see what I can do with this one.

Changed 10 years ago by anevilyak

Attachment: Tracker.FSUtilsFixes.patch added

preliminary testing patch

comment:9 Changed 10 years ago by anevilyak

Attached an initial patch aimed at fixing this problem and one or two others

1) Move To now actually moves in all cases, not just when the same volume's involved. Note that this has the side effect that drag and drop between volumes is now also a move. Whether that remains the case before this patch is finalized is to be determined. 2) The "Replace" option now does a Merge rather than a flat out nuke of the previous dir's contents. Still working on adjusting the GUI portion of it so one can do the merge interactively since it was never previously designed to cope with that (right now it's essentially replace all or cancel). This will also be adjusted as I find time.

For now I'd mainly like to know that it's functionally stable, I haven't found a way to break it yet, but if you do find any regressions I'd like to hear it please.

comment:10 Changed 10 years ago by anevilyak

Resolution: fixed
Status: assignedclosed

Fixed in hrev28731.

comment:11 Changed 10 years ago by anevilyak

Blocking: 3171 added
Note: See TracTickets for help on using tickets.