From 3a899b34c7fa6ae22708fbae2ebfe39c6c3e33fc Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Fri, 25 Nov 2022 14:16:28 +0200 Subject: [PATCH] QmlDesigner: Skip imported files that already exist and are the same When importing files to project, if the target file already exists and has the same modified timestamp, silently skip copying the file instead of asking if it should be overwritten. Fixes: QDS-8402 Change-Id: If963e997c6bcfb3e46db6e74c46081784bdddc7e Reviewed-by: Mahmoud Badri --- .../components/componentcore/modelnodeoperations.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp index df7f701c4e5..c5e32b84c5a 100644 --- a/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp +++ b/src/plugins/qmldesigner/components/componentcore/modelnodeoperations.cpp @@ -1051,7 +1051,11 @@ AddFilesResult addFilesToProject(const QStringList &fileNames, const QString &de QStringList removeList; for (const QString &fileName : fileNames) { const QString targetFile = directory + "/" + QFileInfo(fileName).fileName(); - if (QFileInfo::exists(targetFile)) { + Utils::FilePath srcFilePath = Utils::FilePath::fromString(fileName); + Utils::FilePath targetFilePath = Utils::FilePath::fromString(targetFile); + if (targetFilePath.exists()) { + if (srcFilePath.lastModified() == targetFilePath.lastModified()) + continue; const QString title = QCoreApplication::translate( "ModelNodeOperations", "Overwrite Existing File?"); const QString question = QCoreApplication::translate(