summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel d'Andrada <daniel.dandrada@luxoft.com>2018-03-05 11:21:44 +0100
committerRobert Griebl <robert.griebl@pelagicore.com>2018-03-08 13:50:34 +0000
commitef205ede81ecab188b40b594eaf4865b35a19ae3 (patch)
tree9d44a4099a05160fb9f7b8909905e667d28705e3
parent5581e400c95a1ff736c55c9d93bd451302970c11 (diff)
downloadqtapplicationmanager-ef205ede81ecab188b40b594eaf4865b35a19ae3.tar.gz
Move RunState API from ApplicationManager to Application
In order to have a more object-oriented API Change-Id: I61487aef3a1ea85fe046427eba39473dc4f65ddb Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
-rw-r--r--src/application-lib/application.cpp47
-rw-r--r--src/application-lib/application.h16
-rw-r--r--src/application-lib/yamlapplicationscanner.cpp2
-rw-r--r--src/dbus-lib/applicationmanagerdbuscontextadaptor.cpp2
-rw-r--r--src/manager-lib/applicationmanager.cpp43
-rw-r--r--src/manager-lib/applicationmanager.h16
-rw-r--r--src/monitor-lib/processmonitor_p.cpp4
-rw-r--r--src/monitor-lib/processmonitor_p.h2
-rwxr-xr-xtests/qml/simple/tst_applicationmanager.qml60
-rw-r--r--tests/qml/windowmapping/tst_windowmapping.qml11
10 files changed, 126 insertions, 77 deletions
diff --git a/src/application-lib/application.cpp b/src/application-lib/application.cpp
index 4bb5522e..08e1bb15 100644
--- a/src/application-lib/application.cpp
+++ b/src/application-lib/application.cpp
@@ -244,6 +244,21 @@
\endlist
*/
/*!
+ \qmlproperty enumeration Application::runState
+ \readonly
+
+ This property holds the current run state of the application. It can be one of:
+
+ \list
+ \li Application.NotRunning - the application has not been started yet
+ \li Application.StartingUp - the application has been started and is initializing
+ \li Application.Running - the application is running
+ \li Application.ShuttingDown - the application has been stopped and is cleaning up (in
+ multi-process mode this signal is only emitted if the
+ application terminates gracefully)
+ \endlist
+*/
+/*!
\qmlsignal Application::activated()
This signal is emitted when the application is started or when it's already running but has
@@ -639,6 +654,9 @@ void Application::setCurrentRuntime(AbstractRuntime *rt) const
else
m_runtime = rt;
emit runtimeChanged();
+
+ if (!rt)
+ setRunState(Application::NotRunning);
}
bool Application::isBlocked() const
@@ -661,11 +679,38 @@ Application::State Application::state() const
return m_nonAliased ? m_nonAliased->m_state : m_state;
}
+Application::RunState Application::runState() const
+{
+ return m_nonAliased ? m_nonAliased->m_runState : m_runState;
+}
+
+void Application::setRunState(Application::RunState runState) const
+{
+ if (m_nonAliased)
+ m_nonAliased->setRunState(runState);
+ else
+ if (runState != m_runState) {
+ m_runState = runState;
+ emit runStateChanged(m_runState);
+ }
+}
+
qreal Application::progress() const
{
return m_nonAliased ? m_nonAliased->m_progress : m_progress;
}
+void Application::setNonAliased(const Application *otherApp)
+{
+ if (m_nonAliased)
+ disconnect(m_nonAliased, 0, this, 0);
+
+ m_nonAliased = otherApp;
+
+ if (m_nonAliased)
+ connect(m_nonAliased, &Application::runStateChanged, this, &Application::runStateChanged);
+}
+
Application *Application::readFromDataStream(QDataStream &ds, const QVector<const Application *> &applicationDatabase) Q_DECL_NOEXCEPT_EXPR(false)
{
QScopedPointer<Application> app(new Application);
@@ -724,7 +769,7 @@ Application *Application::readFromDataStream(QDataStream &ds, const QVector<cons
bool found = false;
for (const Application *otherApp : applicationDatabase) {
if (otherApp->id() == baseId) {
- app->m_nonAliased = otherApp;
+ app->setNonAliased(otherApp);
found = true;
break;
}
diff --git a/src/application-lib/application.h b/src/application-lib/application.h
index 1bd6fed8..34839484 100644
--- a/src/application-lib/application.h
+++ b/src/application-lib/application.h
@@ -86,11 +86,20 @@ class Application : public QObject
Q_PROPERTY(bool supportsApplicationInterface READ supportsApplicationInterface NOTIFY bulkChange)
Q_PROPERTY(QString codeDir READ codeDir NOTIFY bulkChange)
Q_PROPERTY(State state READ state NOTIFY stateChanged)
+ Q_PROPERTY(RunState runState READ runState NOTIFY runStateChanged)
public:
enum ExitStatus { NormalExit, CrashExit, ForcedExit };
Q_ENUM(ExitStatus)
+ enum RunState {
+ NotRunning,
+ StartingUp,
+ Running,
+ ShuttingDown,
+ };
+ Q_ENUM(RunState)
+
QString id() const;
int uniqueNumber() const;
QString absoluteCodeFilePath() const;
@@ -161,6 +170,8 @@ public:
Q_ENUM(State)
qreal progress() const;
+ RunState runState() const;
+
void setSupportsApplicationInterface(bool supportsAppInterface);
void setCodeDir(const QString &path);
void setManifestDir(const QString &path);
@@ -178,9 +189,12 @@ signals:
void lastExitStatusChanged() const;
void activated() const;
void stateChanged(State state) const;
+ void runStateChanged(RunState state) const;
private:
Application();
+ void setRunState(Application::RunState) const;
+ void setNonAliased(const Application *);
// static part from info.json
QString m_id;
@@ -224,6 +238,7 @@ private:
mutable QAtomicInt m_mounted;
mutable State m_state = Installed;
+ mutable RunState m_runState = NotRunning;
mutable qreal m_progress = 0;
mutable int m_lastExitCode = 0;
@@ -243,5 +258,6 @@ private:
QT_END_NAMESPACE_AM
Q_DECLARE_METATYPE(const QT_PREPEND_NAMESPACE_AM(Application *))
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE_AM(Application::RunState))
QDebug operator<<(QDebug debug, const QT_PREPEND_NAMESPACE_AM(Application) *app);
diff --git a/src/application-lib/yamlapplicationscanner.cpp b/src/application-lib/yamlapplicationscanner.cpp
index 139b58f8..80d4b919 100644
--- a/src/application-lib/yamlapplicationscanner.cpp
+++ b/src/application-lib/yamlapplicationscanner.cpp
@@ -128,7 +128,7 @@ Application *YamlApplicationScanner::scanInternal(const QString &filePath, bool
throw Exception(Error::Parse, "aliasId '%1' does not match base application id '%2'")
.arg(app->m_id, application->id());
}
- app->m_nonAliased = application;
+ app->setNonAliased(application);
}
} else if (field == "icon") {
app->m_icon = v.toString();
diff --git a/src/dbus-lib/applicationmanagerdbuscontextadaptor.cpp b/src/dbus-lib/applicationmanagerdbuscontextadaptor.cpp
index 2b7c58fe..98c257d9 100644
--- a/src/dbus-lib/applicationmanagerdbuscontextadaptor.cpp
+++ b/src/dbus-lib/applicationmanagerdbuscontextadaptor.cpp
@@ -85,7 +85,7 @@ ApplicationManagerAdaptor::ApplicationManagerAdaptor(QObject *parent)
// connect this signal via a lambda, since it needs a type conversion
connect(am, &ApplicationManager::applicationRunStateChanged,
- this, [this](const QString &id, ApplicationManager::RunState runState) {
+ this, [this](const QString &id, Application::RunState runState) {
emit applicationRunStateChanged(id, runState);
});
}
diff --git a/src/manager-lib/applicationmanager.cpp b/src/manager-lib/applicationmanager.cpp
index 91c01f62..71b1ce4b 100644
--- a/src/manager-lib/applicationmanager.cpp
+++ b/src/manager-lib/applicationmanager.cpp
@@ -250,15 +250,6 @@
This signal is emitted when the \a runState of the application identified by \a id changed.
The \a runState can be one of:
- \list
- \li ApplicationManager.NotRunning - the application has not been started yet
- \li ApplicationManager.StartingUp - the application has been started and is initializing
- \li ApplicationManager.Running - the application is running
- \li ApplicationManager.ShuttingDown - the application has been stopped and is cleaning up (in
- multi-process mode this signal is only emitted if the
- application terminates gracefully)
- \endlist
-
For example this signal can be used to restart an application in multi-process mode when
it has crashed:
@@ -273,6 +264,8 @@
}
}
\endqml
+
+ See also Application::runState
*/
/*!
@@ -340,13 +333,13 @@ enum Roles
QT_BEGIN_NAMESPACE_AM
-static ApplicationManager::RunState runtimeToManagerState(AbstractRuntime::State rtState)
+static Application::RunState runtimeToApplicationRunState(AbstractRuntime::State rtState)
{
switch (rtState) {
- case AbstractRuntime::Startup: return ApplicationManager::StartingUp;
- case AbstractRuntime::Active: return ApplicationManager::Running;
- case AbstractRuntime::Shutdown: return ApplicationManager::ShuttingDown;
- default: return ApplicationManager::NotRunning;
+ case AbstractRuntime::Startup: return Application::StartingUp;
+ case AbstractRuntime::Active: return Application::Running;
+ case AbstractRuntime::Shutdown: return Application::ShuttingDown;
+ default: return Application::NotRunning;
}
}
@@ -421,6 +414,7 @@ ApplicationManager *ApplicationManager::createInstance(ApplicationDatabase *adb,
qmlRegisterUncreatableType<AbstractContainer>("QtApplicationManager", 1, 0, "Container",
qSL("Cannot create objects of type Container"));
qRegisterMetaType<AbstractContainer*>("AbstractContainer*");
+ qRegisterMetaType<Application::RunState>("Application::RunState");
return s_instance = am.take();
}
@@ -780,7 +774,7 @@ bool ApplicationManager::startApplication(const Application *app, const QString
return false;
}
- connect(runtime, &AbstractRuntime::stateChanged, this, [this, app](AbstractRuntime::State newState) {
+ connect(runtime, &AbstractRuntime::stateChanged, this, [this, app](AbstractRuntime::State newRuntimeState) {
QVector<const Application *> apps;
//Always emit the actual starting app/alias first
apps.append(app);
@@ -798,8 +792,12 @@ bool ApplicationManager::startApplication(const Application *app, const QString
apps.append(alias);
}
+ Application::RunState newRunState = runtimeToApplicationRunState(newRuntimeState);
+
+ nonAliasedApp->setRunState(newRunState);
+
for (const Application *app : qAsConst(apps)) {
- emit applicationRunStateChanged(app->id(), runtimeToManagerState(newState));
+ emit applicationRunStateChanged(app->id(), newRunState);
emitDataChanged(app, QVector<int> { IsRunning, IsStartingUp, IsShuttingDown });
}
});
@@ -1341,8 +1339,8 @@ void ApplicationManager::preload()
else
QMetaObject::invokeMethod(qApp, "shutDown", Qt::DirectConnection, Q_ARG(int, 1));
} else if (singleAppMode) {
- connect(this, &ApplicationManager::applicationRunStateChanged, [app](const QString &id, ApplicationManager::RunState runState) {
- if ((id == app->id()) && (runState == NotRunning)) {
+ connect(this, &ApplicationManager::applicationRunStateChanged, [app](const QString &id, Application::RunState runState) {
+ if ((id == app->id()) && (runState == Application::NotRunning)) {
QMetaObject::invokeMethod(qApp, "shutDown", Qt::DirectConnection,
Q_ARG(int, app->lastExitCode()));
}
@@ -1617,17 +1615,14 @@ QVariantMap ApplicationManager::get(const QString &id) const
return map;
}
-ApplicationManager::RunState ApplicationManager::applicationRunState(const QString &id) const
+Application::RunState ApplicationManager::applicationRunState(const QString &id) const
{
int index = indexOfApplication(id);
if (index < 0) {
qCWarning(LogSystem) << "invalid index:" << index;
- return NotRunning;
+ return Application::NotRunning;
}
- const Application *app = d->apps.at(index);
- if (!app->currentRuntime())
- return NotRunning;
- return runtimeToManagerState(app->currentRuntime()->state());
+ return d->apps.at(index)->runState();
}
QT_END_NAMESPACE_AM
diff --git a/src/manager-lib/applicationmanager.h b/src/manager-lib/applicationmanager.h
index ffb7125d..e4e76aac 100644
--- a/src/manager-lib/applicationmanager.h
+++ b/src/manager-lib/applicationmanager.h
@@ -47,6 +47,7 @@
#include <QProcess>
#include <QJSValue>
#include <QtAppManCommon/global.h>
+#include <QtAppManApplication/application.h>
QT_FORWARD_DECLARE_CLASS(QDir)
QT_FORWARD_DECLARE_CLASS(QQmlEngine)
@@ -54,7 +55,6 @@ QT_FORWARD_DECLARE_CLASS(QJSEngine)
QT_BEGIN_NAMESPACE_AM
-class Application;
class ApplicationDatabase;
class ApplicationManagerPrivate;
class AbstractRuntime;
@@ -76,14 +76,6 @@ class ApplicationManager : public QAbstractListModel
Q_PROPERTY(QJSValue containerSelectionFunction READ containerSelectionFunction WRITE setContainerSelectionFunction NOTIFY containerSelectionFunctionChanged)
public:
- enum RunState {
- NotRunning,
- StartingUp,
- Running,
- ShuttingDown,
- };
- Q_ENUM(RunState)
-
~ApplicationManager();
static ApplicationManager *createInstance(ApplicationDatabase *adb, bool singleProcess, QString *error);
static ApplicationManager *instance();
@@ -142,13 +134,13 @@ public:
Q_SCRIPTABLE bool openUrl(const QString &url);
Q_SCRIPTABLE QStringList capabilities(const QString &id) const;
Q_SCRIPTABLE QString identifyApplication(qint64 pid) const;
- Q_SCRIPTABLE RunState applicationRunState(const QString &id) const;
+ Q_SCRIPTABLE QT_PREPEND_NAMESPACE_AM(Application::RunState) applicationRunState(const QString &id) const;
public slots:
void shutDown();
signals:
- Q_SCRIPTABLE void applicationRunStateChanged(const QString &id, QT_PREPEND_NAMESPACE_AM(ApplicationManager::RunState) runState);
+ Q_SCRIPTABLE void applicationRunStateChanged(const QString &id, QT_PREPEND_NAMESPACE_AM(Application::RunState) runState);
Q_SCRIPTABLE void applicationWasActivated(const QString &id, const QString &aliasId);
Q_SCRIPTABLE void countChanged();
@@ -201,5 +193,3 @@ private:
};
QT_END_NAMESPACE_AM
-
-Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE_AM(ApplicationManager::RunState))
diff --git a/src/monitor-lib/processmonitor_p.cpp b/src/monitor-lib/processmonitor_p.cpp
index 3ce11809..0535da54 100644
--- a/src/monitor-lib/processmonitor_p.cpp
+++ b/src/monitor-lib/processmonitor_p.cpp
@@ -425,9 +425,9 @@ ProcessMonitorPrivate::~ProcessMonitorPrivate()
thread.wait();
}
-void ProcessMonitorPrivate::appRuntimeChanged(const QString &id, ApplicationManager::RunState state)
+void ProcessMonitorPrivate::appRuntimeChanged(const QString &id, Application::RunState state)
{
- if (id == appId && (state == ApplicationManager::Running || state == ApplicationManager::NotRunning))
+ if (id == appId && (state == Application::Running || state == Application::NotRunning))
determinePid();
}
diff --git a/src/monitor-lib/processmonitor_p.h b/src/monitor-lib/processmonitor_p.h
index 3d7fb9a7..f2d012c8 100644
--- a/src/monitor-lib/processmonitor_p.h
+++ b/src/monitor-lib/processmonitor_p.h
@@ -224,7 +224,7 @@ signals:
public slots:
void readingUpdate();
- void appRuntimeChanged(const QString &id, ApplicationManager::RunState state);
+ void appRuntimeChanged(const QString &id, Application::RunState state);
#if defined(AM_MULTI_PROCESS) && !defined(AM_HEADLESS)
void applicationWindowClosing(int index, QQuickItem *window);
#endif
diff --git a/tests/qml/simple/tst_applicationmanager.qml b/tests/qml/simple/tst_applicationmanager.qml
index 90f00e07..9675cf55 100755
--- a/tests/qml/simple/tst_applicationmanager.qml
+++ b/tests/qml/simple/tst_applicationmanager.qml
@@ -331,7 +331,7 @@ TestCase {
verify(runStateChangedSpy.count)
compare(runStateChangedSpy.signalArguments[0][0], id)
compare(runStateChangedSpy.signalArguments[0][1], state)
- compare(ApplicationManager.applicationRunState(id), state);
+ compare(ApplicationManager.application(id).runState, state);
runStateChangedSpy.clear();
}
@@ -346,7 +346,7 @@ TestCase {
}
function test_startAndStopApplication(data) {
- compare(ApplicationManager.applicationRunState(data.appId), ApplicationManager.NotRunning);
+ compare(ApplicationManager.application(data.appId).runState, AppMan.Application.NotRunning);
var started = false;
if (data.tag === "Debug") {
@@ -362,23 +362,23 @@ TestCase {
}
verify(started);
- checkApplicationState(data.appId, ApplicationManager.StartingUp);
+ checkApplicationState(data.appId, AppMan.Application.StartingUp);
listView.currentIndex = data.index;
compare(listView.currentItem.modelData.isStartingUp, true)
compare(listView.currentItem.modelData.isRunning, false)
compare(listView.currentItem.modelData.isShuttingDown, false)
- checkApplicationState(data.appId, ApplicationManager.Running);
+ checkApplicationState(data.appId, AppMan.Application.Running);
compare(listView.currentItem.modelData.isStartingUp, false)
compare(listView.currentItem.modelData.isRunning, true)
compare(listView.currentItem.modelData.isShuttingDown, false)
ApplicationManager.stopApplication(data.appId, data.forceKill);
- checkApplicationState(data.appId, ApplicationManager.ShuttingDown);
+ checkApplicationState(data.appId, AppMan.Application.ShuttingDown);
compare(listView.currentItem.modelData.isStartingUp, false)
compare(listView.currentItem.modelData.isRunning, false)
compare(listView.currentItem.modelData.isShuttingDown, true)
- checkApplicationState(data.appId, ApplicationManager.NotRunning);
+ checkApplicationState(data.appId, AppMan.Application.NotRunning);
compare(listView.currentItem.modelData.isStartingUp, false)
compare(listView.currentItem.modelData.isRunning, false)
compare(listView.currentItem.modelData.isShuttingDown, false)
@@ -393,8 +393,8 @@ TestCase {
}
function test_startAndStopAllApplications(data) {
- compare(ApplicationManager.applicationRunState(data.appId1), ApplicationManager.NotRunning);
- compare(ApplicationManager.applicationRunState(data.appId2), ApplicationManager.NotRunning);
+ compare(ApplicationManager.application(data.appId1).runState, AppMan.Application.NotRunning);
+ compare(ApplicationManager.application(data.appId2).runState, AppMan.Application.NotRunning);
var started = false;
@@ -402,12 +402,12 @@ TestCase {
verify(started);
- checkApplicationState(data.appId1, ApplicationManager.StartingUp);
+ checkApplicationState(data.appId1, AppMan.Application.StartingUp);
listView.currentIndex = data.index1;
compare(listView.currentItem.modelData.isStartingUp, true)
compare(listView.currentItem.modelData.isRunning, false)
compare(listView.currentItem.modelData.isShuttingDown, false)
- checkApplicationState(data.appId1, ApplicationManager.Running);
+ checkApplicationState(data.appId1, AppMan.Application.Running);
compare(listView.currentItem.modelData.isStartingUp, false)
compare(listView.currentItem.modelData.isRunning, true)
compare(listView.currentItem.modelData.isShuttingDown, false)
@@ -415,12 +415,12 @@ TestCase {
started = ApplicationManager.startApplication(data.appId2);
verify(started);
- checkApplicationState(data.appId2, ApplicationManager.StartingUp);
+ checkApplicationState(data.appId2, AppMan.Application.StartingUp);
listView.currentIndex = data.index2;
compare(listView.currentItem.modelData.isStartingUp, true)
compare(listView.currentItem.modelData.isRunning, false)
compare(listView.currentItem.modelData.isShuttingDown, false)
- checkApplicationState(data.appId2, ApplicationManager.Running);
+ checkApplicationState(data.appId2, AppMan.Application.Running);
compare(listView.currentItem.modelData.isStartingUp, false)
compare(listView.currentItem.modelData.isRunning, true)
compare(listView.currentItem.modelData.isShuttingDown, false)
@@ -442,7 +442,7 @@ TestCase {
// not perfect, but the basic signal sequence is already tested in test_startAndStopApplication
verify(id === data.appId1 || id === data.appId2, "id = " + id)
- verify(state === ApplicationManager.ShuttingDown || state === ApplicationManager.NotRunning)
+ verify(state === AppMan.Application.ShuttingDown || state === AppMan.Application.NotRunning)
}
runStateChangedSpy.clear()
}
@@ -461,7 +461,7 @@ TestCase {
compare(ApplicationManager.get("invalidApplication"), {});
ignoreWarning("invalid index: -1");
- compare(ApplicationManager.applicationRunState("invalidApplication"), ApplicationManager.NotRunning);
+ compare(ApplicationManager.applicationRunState("invalidApplication"), AppMan.Application.NotRunning);
ignoreWarning("Cannot start an invalid application");
verify(!ApplicationManager.startApplication("invalidApplication"))
@@ -474,13 +474,13 @@ TestCase {
verify(!ApplicationManager.debugApplication(simpleApplication.id, " "))
verify(ApplicationManager.startApplication(simpleApplication.id));
- checkApplicationState(simpleApplication.id, ApplicationManager.StartingUp);
- checkApplicationState(simpleApplication.id, ApplicationManager.Running);
+ checkApplicationState(simpleApplication.id, AppMan.Application.StartingUp);
+ checkApplicationState(simpleApplication.id, AppMan.Application.Running);
ignoreWarning("Application tld.test.simple1 is already running - cannot start with debug-wrapper: %program% %arguments%");
verify(!ApplicationManager.debugApplication(simpleApplication.id, "%program% %arguments%"))
ApplicationManager.stopApplication(simpleApplication.id, true);
- checkApplicationState(simpleApplication.id, ApplicationManager.ShuttingDown);
- checkApplicationState(simpleApplication.id, ApplicationManager.NotRunning);
+ checkApplicationState(simpleApplication.id, AppMan.Application.ShuttingDown);
+ checkApplicationState(simpleApplication.id, AppMan.Application.NotRunning);
}
function test_openUrl_data() {
@@ -493,18 +493,18 @@ TestCase {
function test_openUrl(data) {
verify(ApplicationManager.openUrl(data.url));
- checkApplicationState(data.expectedApp, ApplicationManager.StartingUp);
- checkApplicationState(data.expectedApp, ApplicationManager.Running);
+ checkApplicationState(data.expectedApp, AppMan.Application.StartingUp);
+ checkApplicationState(data.expectedApp, AppMan.Application.Running);
ApplicationManager.stopApplication(data.expectedApp, true);
- checkApplicationState(data.expectedApp, ApplicationManager.ShuttingDown);
- checkApplicationState(data.expectedApp, ApplicationManager.NotRunning);
+ checkApplicationState(data.expectedApp, AppMan.Application.ShuttingDown);
+ checkApplicationState(data.expectedApp, AppMan.Application.NotRunning);
Qt.openUrlExternally(data.url);
- checkApplicationState(data.expectedApp, ApplicationManager.StartingUp);
- checkApplicationState(data.expectedApp, ApplicationManager.Running);
+ checkApplicationState(data.expectedApp, AppMan.Application.StartingUp);
+ checkApplicationState(data.expectedApp, AppMan.Application.Running);
ApplicationManager.stopApplication(data.expectedApp, true);
- checkApplicationState(data.expectedApp, ApplicationManager.ShuttingDown);
- checkApplicationState(data.expectedApp, ApplicationManager.NotRunning);
+ checkApplicationState(data.expectedApp, AppMan.Application.ShuttingDown);
+ checkApplicationState(data.expectedApp, AppMan.Application.NotRunning);
}
property bool containerSelectionCalled: false
@@ -525,11 +525,11 @@ TestCase {
compare(ApplicationManager.containerSelectionFunction, undefined);
ApplicationManager.containerSelectionFunction = containerSelection;
ApplicationManager.startApplication(simpleApplication.id);
- checkApplicationState(simpleApplication.id, ApplicationManager.StartingUp);
- checkApplicationState(simpleApplication.id, ApplicationManager.Running);
+ checkApplicationState(simpleApplication.id, AppMan.Application.StartingUp);
+ checkApplicationState(simpleApplication.id, AppMan.Application.Running);
ApplicationManager.stopApplication(simpleApplication.id, true);
- checkApplicationState(simpleApplication.id, ApplicationManager.ShuttingDown);
- checkApplicationState(simpleApplication.id, ApplicationManager.NotRunning);
+ checkApplicationState(simpleApplication.id, AppMan.Application.ShuttingDown);
+ checkApplicationState(simpleApplication.id, AppMan.Application.NotRunning);
verify(containerSelectionCalled);
compare(containerSelectionAppId, simpleApplication.id);
compare(containerSelectionConId, "process");
diff --git a/tests/qml/windowmapping/tst_windowmapping.qml b/tests/qml/windowmapping/tst_windowmapping.qml
index 197199de..a6bbd2c4 100644
--- a/tests/qml/windowmapping/tst_windowmapping.qml
+++ b/tests/qml/windowmapping/tst_windowmapping.qml
@@ -42,6 +42,7 @@
import QtQuick 2.3
import QtTest 1.0
import QtApplicationManager 1.0
+import QtApplicationManager 1.0 as AppMan // Because there's already an Application object in the global namespace
TestCase {
id: testCase
@@ -105,7 +106,8 @@ TestCase {
function cleanup() {
runStateChangedSpy.clear();
ApplicationManager.stopApplication(appId);
- while (ApplicationManager.applicationRunState(appId) !== ApplicationManager.NotRunning)
+ var app = ApplicationManager.application(appId);
+ while (app.runState !== AppMan.Application.NotRunning)
runStateChangedSpy.wait(3000);
windowReadySpy.clear();
windowClosingSpy.clear();
@@ -276,13 +278,14 @@ TestCase {
AmTest.ignoreMessage(AmTest.CriticalMsg, /Stopping application.*because we did not receive a Wayland-Pong/);
ApplicationManager.startApplication(appId);
windowReadySpy.wait(2000);
- compare(ApplicationManager.applicationRunState(appId), ApplicationManager.Running)
+ var app = ApplicationManager.application(appId);
+ compare(app.runState, AppMan.Application.Running);
runStateChangedSpy.clear();
wait(2200);
runStateChangedSpy.wait(2000);
- compare(runStateChangedSpy.signalArguments[0][1], ApplicationManager.ShuttingDown)
+ compare(runStateChangedSpy.signalArguments[0][1], AppMan.Application.ShuttingDown);
runStateChangedSpy.wait(2000);
- compare(runStateChangedSpy.signalArguments[1][1], ApplicationManager.NotRunning)
+ compare(runStateChangedSpy.signalArguments[1][1], AppMan.Application.NotRunning);
}
function test_window_properties() {