aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlprojectmanager/qmlproject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmlprojectmanager/qmlproject.cpp')
-rw-r--r--src/plugins/qmlprojectmanager/qmlproject.cpp15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp
index ba00ad797f..4a9737d091 100644
--- a/src/plugins/qmlprojectmanager/qmlproject.cpp
+++ b/src/plugins/qmlprojectmanager/qmlproject.cpp
@@ -88,6 +88,14 @@ static int preferedQtTarget(Target *target)
return 5;
}
+static bool allowOnlySingleProject()
+{
+ QSettings *settings = Core::ICore::settings();
+ const QString qdsAllowMultipleProjects = "QML/Designer/AllowMultipleProjects";
+
+ return !settings->value(qdsAllowMultipleProjects, false).toBool();
+}
+
const char openInQDSAppSetting[] = "OpenInQDSApp";
Utils::FilePaths QmlProject::getUiQmlFilesForFolder(const Utils::FilePath &folder)
@@ -110,9 +118,10 @@ QmlProject::QmlProject(const Utils::FilePath &fileName)
setBuildSystemCreator([](Target *t) { return new QmlBuildSystem(t); });
if (QmlProject::isQtDesignStudio()) {
-
- EditorManager::closeAllDocuments();
- SessionManager::closeAllProjects();
+ if (allowOnlySingleProject()) {
+ EditorManager::closeAllDocuments();
+ SessionManager::closeAllProjects();
+ }
m_openFileConnection
= connect(this,