Implements previewing qml preview for a qmlproject

To run it requires either designpreview.apk installed
on the device or apks placed in
<QTCREATATORDIR>/share/qtcreator/android/qtdesignviewer/
Apk filename should follow designpreview_$ARCH.apk

Task-number: QAA-512
Change-Id: Ida955b0fac519112d4623166677a7ba8e9afb1f4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Piotr Mikolajczyk
2021-08-16 13:48:26 +02:00
parent c2aeec7e86
commit 261a39cbbd
10 changed files with 586 additions and 17 deletions

View File

@@ -34,6 +34,7 @@
#include "androidmanifesteditorfactory.h"
#include "androidpackageinstallationstep.h"
#include "androidpotentialkit.h"
#include "androidqmlpreviewworker.h"
#include "androidqmltoolingsupport.h"
#include "androidqtversion.h"
#include "androidrunconfiguration.h"
@@ -96,14 +97,6 @@ public:
}
};
class AndroidQmlPreviewWorker : public AndroidQmlToolingSupport
{
public:
AndroidQmlPreviewWorker(RunControl *runControl)
: AndroidQmlToolingSupport(runControl, runControl->runnable().command.executable().toString())
{}
};
class AndroidPluginPrivate : public QObject
{
public:
@@ -136,14 +129,9 @@ public:
{runConfigFactory.runConfigurationId()}
};
RunWorkerFactory qmlPreviewWorkerFactory{
RunWorkerFactory::make<AndroidQmlToolingSupport>(),
{QML_PREVIEW_RUN_MODE},
{runConfigFactory.runConfigurationId()}
};
RunWorkerFactory qmlPreviewWorkerFactory2{
RunWorkerFactory::make<AndroidQmlPreviewWorker>(),
{QML_PREVIEW_RUN_MODE},
{"QmlProjectManager.QmlRunConfiguration"},
{"QmlProjectManager.QmlRunConfiguration.Qml", runConfigFactory.runConfigurationId()},
{Android::Constants::ANDROID_DEVICE_TYPE}
};