summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomasz Sterna <tomek@xiaoka.com>2015-04-17 13:36:51 +0200
committerTomasz Sterna <tomek@xiaoka.com>2015-04-17 13:36:51 +0200
commite059c47ff2986c329d075f6f5fbedbf19cff430d (patch)
tree7b68dac29a0583811270bcf605ef6a194dec1220
parentdc899d978eaf0ad2afc2768ab8b731974b791966 (diff)
Show configure option only for configurable apps
Test for "configurable" capability.
-rw-r--r--app/pebbledinterface.cpp1
-rw-r--r--app/qml/pages/WatchPage.qml3
-rw-r--r--app/translations/pebble-es.ts14
-rw-r--r--app/translations/pebble-pl.ts14
-rw-r--r--app/translations/pebble.ts14
-rw-r--r--daemon/manager.cpp3
6 files changed, 26 insertions, 23 deletions
diff --git a/app/pebbledinterface.cpp b/app/pebbledinterface.cpp
index 2099c9e..13535da 100644
--- a/app/pebbledinterface.cpp
+++ b/app/pebbledinterface.cpp
@@ -358,6 +358,7 @@ void PebbledInterface::refreshAllApps()
m.insert("companyName", orig.value("company-name"));
m.insert("versionLabel", orig.value("version-label"));
m.insert("isWatchface", orig.value("is-watchface"));
+ m.insert("isConfigurable", orig.value("configurable"));
QByteArray pngIcon = orig.value("menu-icon").toByteArray();
if (!pngIcon.isEmpty()) {
diff --git a/app/qml/pages/WatchPage.qml b/app/qml/pages/WatchPage.qml
index 55f4db0..730f850 100644
--- a/app/qml/pages/WatchPage.qml
+++ b/app/qml/pages/WatchPage.qml
@@ -96,6 +96,7 @@ Page {
property var appInfo: pebbled.appInfoByUuid(modelData)
property bool isKnownApp: appInfo.hasOwnProperty("uuid")
property bool isLocalApp: appInfo.hasOwnProperty("isLocal") && appInfo.isLocal
+ property bool isConfigurable: appInfo.hasOwnProperty("isConfigurable") && appInfo.isConfigurable
property bool busy: false
function configure() {
@@ -212,7 +213,7 @@ Page {
}
MenuItem {
text: qsTr("Configure...")
- visible: !isEmptySlot && isLocalApp
+ visible: !isEmptySlot && isLocalApp && isConfigurable
onClicked: configure();
}
MenuItem {
diff --git a/app/translations/pebble-es.ts b/app/translations/pebble-es.ts
index 005bfe3..4a67245 100644
--- a/app/translations/pebble-es.ts
+++ b/app/translations/pebble-es.ts
@@ -357,37 +357,37 @@ Si esto tarda mucho, comprueba que el reloj esté emparejado correctamente.</tra
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="115"/>
+ <location filename="../qml/pages/WatchPage.qml" line="116"/>
<source>Uninstalling</source>
<translation>Desinstalando</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="187"/>
+ <location filename="../qml/pages/WatchPage.qml" line="188"/>
<source>(empty slot)</source>
<translation>(hueco libre)</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="187"/>
+ <location filename="../qml/pages/WatchPage.qml" line="188"/>
<source>(slot in use by unknown app)</source>
<translation>(hueco en uso)</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="196"/>
+ <location filename="../qml/pages/WatchPage.qml" line="197"/>
<source>Install app...</source>
<translation>Instalar app...</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="201"/>
+ <location filename="../qml/pages/WatchPage.qml" line="202"/>
<source>Companion app missing</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="214"/>
+ <location filename="../qml/pages/WatchPage.qml" line="215"/>
<source>Configure...</source>
<translation>Configurar...</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="219"/>
+ <location filename="../qml/pages/WatchPage.qml" line="220"/>
<source>Uninstall</source>
<translation>Desinstalar</translation>
</message>
diff --git a/app/translations/pebble-pl.ts b/app/translations/pebble-pl.ts
index facc044..7d882c7 100644
--- a/app/translations/pebble-pl.ts
+++ b/app/translations/pebble-pl.ts
@@ -353,37 +353,37 @@ Jeśli nie zostaje znaleziony sprawdź czy jest w zasięgu i czy jest sparowany
<translation>Twój firmware jest zbyt stary aby obsłużyć aplikacje SDKv2</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="115"/>
+ <location filename="../qml/pages/WatchPage.qml" line="116"/>
<source>Uninstalling</source>
<translation>Odinstalowywanie</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="187"/>
+ <location filename="../qml/pages/WatchPage.qml" line="188"/>
<source>(empty slot)</source>
<translation>(pusty slot)</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="187"/>
+ <location filename="../qml/pages/WatchPage.qml" line="188"/>
<source>(slot in use by unknown app)</source>
<translation>(slot w użyciu przez nieznaną aplikację)</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="196"/>
+ <location filename="../qml/pages/WatchPage.qml" line="197"/>
<source>Install app...</source>
<translation>Zainstaluj aplikację...</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="201"/>
+ <location filename="../qml/pages/WatchPage.qml" line="202"/>
<source>Companion app missing</source>
<translation>Brakuje companion app</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="214"/>
+ <location filename="../qml/pages/WatchPage.qml" line="215"/>
<source>Configure...</source>
<translation>Konfiguruj...</translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="219"/>
+ <location filename="../qml/pages/WatchPage.qml" line="220"/>
<source>Uninstall</source>
<translation>Odinstaluj</translation>
</message>
diff --git a/app/translations/pebble.ts b/app/translations/pebble.ts
index b9c74d3..1b62733 100644
--- a/app/translations/pebble.ts
+++ b/app/translations/pebble.ts
@@ -352,37 +352,37 @@ If it can&apos;t be found please check it&apos;s available and paired in Bluetoo
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="115"/>
+ <location filename="../qml/pages/WatchPage.qml" line="116"/>
<source>Uninstalling</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="187"/>
+ <location filename="../qml/pages/WatchPage.qml" line="188"/>
<source>(empty slot)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="187"/>
+ <location filename="../qml/pages/WatchPage.qml" line="188"/>
<source>(slot in use by unknown app)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="196"/>
+ <location filename="../qml/pages/WatchPage.qml" line="197"/>
<source>Install app...</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="201"/>
+ <location filename="../qml/pages/WatchPage.qml" line="202"/>
<source>Companion app missing</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="214"/>
+ <location filename="../qml/pages/WatchPage.qml" line="215"/>
<source>Configure...</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../qml/pages/WatchPage.qml" line="219"/>
+ <location filename="../qml/pages/WatchPage.qml" line="220"/>
<source>Uninstall</source>
<translation type="unfinished"></translation>
</message>
diff --git a/daemon/manager.cpp b/daemon/manager.cpp
index db183bd..02a4021 100644
--- a/daemon/manager.cpp
+++ b/daemon/manager.cpp
@@ -436,7 +436,7 @@ QVariantList PebbledProxy::AllApps() const
QVariantList l;
foreach (const QUuid &uuid, uuids) {
- const AppInfo &info = manager()->apps->info(uuid);
+ AppInfo info = manager()->apps->info(uuid);
QVariantMap m;
m.insert("local", QVariant::fromValue(info.isLocal()));
m.insert("uuid", QVariant::fromValue(info.uuid().toString()));
@@ -445,6 +445,7 @@ QVariantList PebbledProxy::AllApps() const
m.insert("company-name", QVariant::fromValue(info.companyName()));
m.insert("version-label", QVariant::fromValue(info.versionLabel()));
m.insert("is-watchface", QVariant::fromValue(info.isWatchface()));
+ m.insert("configurable", QVariant::fromValue(info.capabilities().testFlag(AppInfo::Capability::Configurable)));
if (!info.getMenuIconImage().isNull()) {
m.insert("menu-icon", QVariant::fromValue(info.getMenuIconPng()));