swiss-gc
swiss-gc copied to clipboard
Expanded folder operations (Move/Copy)
This PR adds recursive Copy and Move operations for folders and adds "merge" functionality if a file/folder is renamed to an existing name.
Handles these edge cases:
- Folder already exists upon folder copy/move/rename.
- Asks user if overwrite is OK. Applies to all subfolders and files for this operation.
- Recursively copies files and folders into existing structure.
- Shows progress bar for every file.
- File already exists upon file rename.
- Asks user if overwrite is OK.
- Deletes destination file and renames source file.
- Folder copy/move to same location attempted.
- Notify user that folder can't be copied over self and stop.
- Folder copy/move to inside itself attempted.
- Notify user that folder can't be copied inside itself and stop.