summaryrefslogtreecommitdiff
path: root/daemon/manager.cpp
diff options
context:
space:
mode:
authorJavier <dev.git@javispedro.com>2014-12-03 01:19:57 +0100
committerJavier <dev.git@javispedro.com>2014-12-03 01:19:57 +0100
commit87de94ea74c68b5ea0a4b125f1745c7449fbe4f1 (patch)
treed1ae6ad7d605bcdb878c7b5ca0a43809c0179654 /daemon/manager.cpp
parent69822e4dcf541a52e4202d5ff566364fb90e6ec0 (diff)
fix actually setting the configuration, improve xhr support
Diffstat (limited to 'daemon/manager.cpp')
-rw-r--r--daemon/manager.cpp26
1 files changed, 24 insertions, 2 deletions
diff --git a/daemon/manager.cpp b/daemon/manager.cpp
index 1fc8a20..6fd47a4 100644
--- a/daemon/manager.cpp
+++ b/daemon/manager.cpp
@@ -410,7 +410,8 @@ void Manager::onAppClosed(const QUuid &uuid)
emit proxy->AppUuidChanged();
}
-bool PebbledProxy::SendAppMessage(const QString &uuid, const QVariantMap &data) {
+bool PebbledProxy::SendAppMessage(const QString &uuid, const QVariantMap &data)
+{
Q_ASSERT(calledFromDBus());
const QDBusMessage msg = message();
setDelayedReply(true);
@@ -424,7 +425,8 @@ bool PebbledProxy::SendAppMessage(const QString &uuid, const QVariantMap &data)
return false; // D-Bus clients should never see this reply.
}
-QString PebbledProxy::StartAppConfiguration(const QString &uuid) {
+QString PebbledProxy::StartAppConfiguration(const QString &uuid)
+{
Q_ASSERT(calledFromDBus());
const QDBusMessage msg = message();
@@ -474,3 +476,23 @@ QString PebbledProxy::StartAppConfiguration(const QString &uuid) {
return QString(); // This return value should never be used.
}
+
+void PebbledProxy::SendAppConfigurationData(const QString &uuid, const QString &data)
+{
+ Q_ASSERT(calledFromDBus());
+ const QDBusMessage msg = message();
+
+ if (manager()->currentAppUuid != uuid) {
+ sendErrorReply(msg.interface() + ".Error.AppNotRunning",
+ "The requested app is not currently opened in the watch");
+ return;
+ }
+
+ if (!manager()->js->isJSKitAppRunning()) {
+ sendErrorReply(msg.interface() + ".Error.JSNotActive",
+ "The requested app is not a PebbleKit JS application");
+ return;
+ }
+
+ manager()->js->handleWebviewClosed(data);
+}