aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVille Voutilainen <ville.voutilainen@qt.io>2020-11-26 07:05:11 +0200
committerVille Voutilainen <ville.voutilainen@qt.io>2020-11-26 10:52:53 +0000
commit23501b427182e47d3bc36431f2603e5840f5f5cd (patch)
tree3c13017e547f4a25e70cc809d2e4a531e0c53dee
parentd31f2219fda1a96e755b96621443df64ec5bd2a1 (diff)
Android: Don't remove icons or splashes if files with similar names exist
Task-number: QTCREATORBUG-24879 Change-Id: Ie13a8a94534889c473414b5a5e771aae11d0f167 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
-rw-r--r--src/plugins/android/androidmanifesteditoriconwidget.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/plugins/android/androidmanifesteditoriconwidget.cpp b/src/plugins/android/androidmanifesteditoriconwidget.cpp
index 5eb6a04405..9cc9ffda66 100644
--- a/src/plugins/android/androidmanifesteditoriconwidget.cpp
+++ b/src/plugins/android/androidmanifesteditoriconwidget.cpp
@@ -255,6 +255,17 @@ static QImage scaleWithoutStretching(const QImage& original, const QSize& target
return ret;
}
+static bool similarFilesExist(const QString &path)
+{
+ QFileInfo fileInfo(path);
+ QDir imageDir(fileInfo.absolutePath());
+ QString baseName(fileInfo.completeBaseName());
+ baseName.append(QLatin1String(".*"));
+ imageDir.setNameFilters({baseName});
+ auto entries = imageDir.entryList();
+ return !entries.empty();
+}
+
void AndroidManifestEditorIconWidget::copyIcon()
{
if (m_targetIconPath.isEmpty())
@@ -269,7 +280,8 @@ void AndroidManifestEditorIconWidget::copyIcon()
if (m_iconPath != targetPath)
removeIcon();
if (original.isNull()) {
- m_iconPath.clear();
+ if (!similarFilesExist(m_iconPath))
+ m_iconPath.clear();
return;
}
if (m_iconPath == targetPath)