diff options
Diffstat (limited to 'src/plugins/studiowelcome')
-rw-r--r-- | src/plugins/studiowelcome/StudioWelcome.json.in | 2 | ||||
-rw-r--r-- | src/plugins/studiowelcome/studiowelcomeplugin.cpp | 38 |
2 files changed, 20 insertions, 20 deletions
diff --git a/src/plugins/studiowelcome/StudioWelcome.json.in b/src/plugins/studiowelcome/StudioWelcome.json.in index 9ee3c251721..5ab72606cf6 100644 --- a/src/plugins/studiowelcome/StudioWelcome.json.in +++ b/src/plugins/studiowelcome/StudioWelcome.json.in @@ -14,6 +14,6 @@ "Alternatively, this plugin may be used under the terms of the GNU General Public License version 3 as published by the Free Software Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT included in the packaging of this plugin. Please review the following information to ensure the GNU General Public License requirements will be met: https://www.gnu.org/licenses/gpl-3.0.html." ], "Description" : "Qt Design Studio Welcome Page.", - "Url" : "http://www.qt.io", + "Url" : "https://www.qt.io", ${IDE_PLUGIN_DEPENDENCIES} } diff --git a/src/plugins/studiowelcome/studiowelcomeplugin.cpp b/src/plugins/studiowelcome/studiowelcomeplugin.cpp index d526a9c4363..6cb94efb35b 100644 --- a/src/plugins/studiowelcome/studiowelcomeplugin.cpp +++ b/src/plugins/studiowelcome/studiowelcomeplugin.cpp @@ -338,30 +338,27 @@ public: if (exampleVersion.isEmpty()) return true; - const QStringList exampleVersionParts = exampleVersion.split('.'); - const QStringList qdsVersionParts = QCoreApplication::applicationVersion().split('.'); + // Split versions into parts (major, minor, patch) + QStringList qdsVersionParts = QCoreApplication::applicationVersion().split('.'); + QStringList exampleVersionParts = exampleVersion.split('.'); - QList<int> exampleVerInts; - QList<int> qdsVerInts; - for (const QString &part : exampleVersionParts) - exampleVerInts.append(part.toInt()); + // Fill missing parts with zeros + while (qdsVersionParts.size() < 3) + qdsVersionParts.append("0"); - for (const QString &part : qdsVersionParts) - qdsVerInts.append(part.toInt()); + while (exampleVersionParts.size() < 3) + exampleVersionParts.append("0"); - // pad zeros so both lists are same size - while (qdsVerInts.size() < exampleVerInts.size()) - qdsVerInts.append(0); + int qdsMajor = qdsVersionParts.at(0).toInt(); + int qdsMinor = qdsVersionParts.at(1).toInt(); + int qdsPatch = qdsVersionParts.at(2).toInt(); - while (exampleVerInts.size() < qdsVerInts.size()) - exampleVerInts.append(0); + int exMajor = exampleVersionParts.at(0).toInt(); + int exMinor = exampleVersionParts.at(1).toInt(); + int exPatch = exampleVersionParts.at(2).toInt(); - for (int i = 0; i < qdsVerInts.size(); ++i) { - if (exampleVerInts[i] < qdsVerInts[i]) - return false; - } - - return true; + return QT_VERSION_CHECK(exMajor, exMinor, exPatch) + <= QT_VERSION_CHECK(qdsMajor, qdsMinor, qdsPatch); } public slots: @@ -587,6 +584,9 @@ static bool forceDownLoad() static bool showSplashScreen() { + // some error dialog is maybe open, be silent to avoid focus problems (macOS had some) + if (Core::ICore::mainWindow() != Core::ICore::dialogParent()) + return false; const Key lastQDSVersionEntry = "QML/Designer/lastQDSVersion"; QtcSettings *settings = Core::ICore::settings(); |