GUI overhaul
Would be nice to simplify the life for the users by introducing more intuitive, obvious for "what-will-happen" interface of the TeraCopy. Up to the point that the knowledge base can go directly to the program.
For example, imagine a user moving files so that there are files with identical names in destination folder. User is unsure whether they have the same content and wants to be careful. So far, TeraCopy currently guides the user in the following way:
- Start copying all files from source to destination.
- Select Skip all when prompted.
- Click the Verify button.
- Select OK when you see the 'Compare skipped files?' prompt.
- Select files that have mismatching checksum.
And only after this, there is a list of copy collisions that the user can investigate manually and decide on some actions if no bulk solution can be applied.
Why not automating this routine by using some new mode, say "Seamless Move"? To move the files with no conflicts, then automatically compare checksums of conflicting files that have the same name and size - on the fly, without user request, - and remove the duplicates from the directory of origin if matching*, and only then, if any conflicts remain, prompt an action (and make user aware that there are no identical files remained). Of course, user might want to review the files individually (and he will value creating a separate paused task instead of manually clearing the original task from succesfuly finished files) - right now we have something like 5 or 6 options that limit the user. He might want to use any combination of (keep/rename)(older/newer/larger/smaller files/files from origin/files already existing in destination) target-actions. Since all checksums are built to this point, why not displaying a warning about files of different names but same checksum. And, of course, before a "destructive" action (other than keep/rename) is performed, the Move action can be undone, so why not offering user an Undo button as well?
*in an implausible but not impossible event of checksum match, a file of same size but differrent content will be deletein the directory of origin without affecting target file.
You're complicating things too much
Copy process is already an unattended process.
To achieve what you are asking:
Copy files from one location to another. If any conflict arises, just let the aplication SKIP ALL FILES. i.e.: do not press any button.
When finished, select "Skipped" from combobox just above the file list view in expanded View.
Press "NEXT" button on the frame above the File List Frame so that "Copy", "Move", "Test", "Verify" and "Delete" options are presented (for me this is the non intuitive step, as NEXT may mean "Next list" and no "Next action on filtered list" as it may means right now.
Now you can Verify only those skipped files and see if checksum matches. If cheksum does not match then you can select "Failed" and copy them to another location if you wish just by selecting a new Destination by clicking on "Target" -> "Browse". Then only the failed files will be copied to another location. You don't really need to delete anything from the list. Just use the filter on the combobox and the actions to perform on those filtered files.
Teracopy is a file copier, not a file observer to know if a file has changed name but not content. It should "observe" not conflicting files just to know if that file is the renamed source. And it is not for what Teracopy has been designed.
If you want to do things like that you may want to use Syncthing. It recognizes if a file has same content and will only rename the file on destination. The bad thing is that it has to build a checksum database for source and destination dirs and if several terabytes are involved, then expected first exploration time may be up to several days.