handle case clash conflicts in a similar way to content conflicts
authorMatthieu Gallien <matthieu.gallien@nextcloud.com>
Wed, 30 Nov 2022 09:34:49 +0000 (10:34 +0100)
committerMatthieu Gallien <matthieu.gallien@nextcloud.com>
Wed, 25 Jan 2023 15:37:35 +0000 (16:37 +0100)
commit602b8db5e2adc287b2a0ecb3d409e4811d079f78
treee0eb37a45a3852dd36c5d6bb4a2a6fa91be151db
parent5c42da4de5facbea9b06cf7086bee17005be59b2
handle case clash conflicts in a similar way to content conflicts

introduce a new type of conflict for case clash filename conflicts

add proper handling including a new utility class to solve them and a
new dialog for the user to pick a fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
35 files changed:
CMakeLists.txt
src/common/preparedsqlquerymanager.h
src/common/syncjournaldb.cpp
src/common/syncjournaldb.h
src/common/utility.cpp
src/common/utility.h
src/csync/csync.h
src/csync/csync_exclude.cpp
src/csync/csync_exclude.h
src/gui/CMakeLists.txt
src/gui/caseclashfilenamedialog.cpp [new file with mode: 0644]
src/gui/caseclashfilenamedialog.h [new file with mode: 0644]
src/gui/caseclashfilenamedialog.ui [new file with mode: 0644]
src/gui/folder.cpp
src/gui/folder.h
src/gui/sharemanager.h
src/gui/tray/activitylistmodel.cpp
src/gui/tray/activitylistmodel.h
src/libsync/CMakeLists.txt
src/libsync/caseclashconflictsolver.cpp [new file with mode: 0644]
src/libsync/caseclashconflictsolver.h [new file with mode: 0644]
src/libsync/discovery.cpp
src/libsync/discoveryphase.h
src/libsync/filesystem.cpp
src/libsync/owncloudpropagator.cpp
src/libsync/owncloudpropagator.h
src/libsync/progressdispatcher.cpp
src/libsync/propagatedownload.cpp
src/libsync/propagatorjobs.cpp
src/libsync/syncengine.cpp
src/libsync/syncengine.h
test/syncenginetestutils.cpp
test/teste2efiletransfer.cpp
test/testsyncengine.cpp
test/testsyncvirtualfiles.cpp