From dfd9d4804e3514b5e7776c0b7fe97587bcecb20c Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Tue, 22 Feb 2022 16:33:53 +0100 Subject: QmlDesigner: Track if QDS was opened from QtC MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task-number: QDS-6315 Change-Id: I4109e9c98ff5c27b4096b1af32ae945aec10c123 Reviewed-by: Henning Gründl --- src/plugins/qmldesigner/qmldesignerplugin.cpp | 5 ++++- src/plugins/qmlprojectmanager/qmlproject.cpp | 5 +++++ src/plugins/qmlprojectmanager/qmlproject.h | 1 + src/plugins/qmlprojectmanager/qmlprojectconstants.h | 2 ++ src/plugins/qmlprojectmanager/qmlprojectplugin.cpp | 2 ++ 5 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmldesigner/qmldesignerplugin.cpp b/src/plugins/qmldesigner/qmldesignerplugin.cpp index 3748a2164e..fafbce3809 100644 --- a/src/plugins/qmldesigner/qmldesignerplugin.cpp +++ b/src/plugins/qmldesigner/qmldesignerplugin.cpp @@ -312,8 +312,11 @@ bool QmlDesignerPlugin::delayedInitialize() d->viewManager.registerFormEditorTool(std::make_unique()); d->viewManager.registerFormEditorTool(std::make_unique()); - if (QmlProjectManager::QmlProject::isQtDesignStudio()) + if (QmlProjectManager::QmlProject::isQtDesignStudio()) { emitUsageStatistics("StandaloneMode"); + if (QmlProjectManager::QmlProject::isQtDesignStudioStartedFromQtC()) + emitUsageStatistics("QDSlaunchedFromQtC"); + } return true; } diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp index e96dadb970..9191106ed4 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.cpp +++ b/src/plugins/qmlprojectmanager/qmlproject.cpp @@ -517,6 +517,11 @@ bool QmlProject::isQtDesignStudio() return settings->value(qdsStandaloneEntry, false).toBool(); } +bool QmlProject::isQtDesignStudioStartedFromQtC() +{ + return qEnvironmentVariableIsSet(Constants::enviromentLaunchedQDS); +} + ProjectExplorer::DeploymentKnowledge QmlProject::deploymentKnowledge() const { return DeploymentKnowledge::Perfect; diff --git a/src/plugins/qmlprojectmanager/qmlproject.h b/src/plugins/qmlprojectmanager/qmlproject.h index a351d394c7..fed2002912 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.h +++ b/src/plugins/qmlprojectmanager/qmlproject.h @@ -147,6 +147,7 @@ public: ProjectExplorer::Tasks projectIssues(const ProjectExplorer::Kit *k) const final; static bool isQtDesignStudio(); + static bool isQtDesignStudioStartedFromQtC(); bool isEditModePreferred() const override; diff --git a/src/plugins/qmlprojectmanager/qmlprojectconstants.h b/src/plugins/qmlprojectmanager/qmlprojectconstants.h index 184469f243..3ba2b10146 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectconstants.h +++ b/src/plugins/qmlprojectmanager/qmlprojectconstants.h @@ -41,5 +41,7 @@ const char customQt6Project[] = "CustomQt6Project"; const char mainFilePath[] = "MainFilePath"; const char customImportPaths[] = "CustomImportPaths"; const char canonicalProjectDir[] ="CanonicalProjectDir"; + +const char enviromentLaunchedQDS[] = "QTC_LAUNCHED_QDS"; } // namespace Constants } // namespace QmlProjectManager diff --git a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp index 2922c55aea..17cce6402f 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp @@ -25,6 +25,7 @@ #include "qmlprojectplugin.h" #include "qmlproject.h" +#include "qmlprojectconstants.h" #include "qmlprojectrunconfiguration.h" #include @@ -105,6 +106,7 @@ void QmlProjectPlugin::openQDS(const Utils::FilePath &fileName) { const Utils::FilePath &qdsPath = QmlProjectPlugin::qdsInstallationEntry(); bool qdsStarted = false; + qputenv(Constants::enviromentLaunchedQDS, "true"); //-a and -client arguments help to append project to open design studio application if (Utils::HostOsInfo::isMacHost()) qdsStarted = Utils::QtcProcess::startDetached( -- cgit v1.2.3