Merge PR #433: Fix entering things pages when there's only one in the list
This commit is contained in:
commit
f08d712437
@ -161,7 +161,3 @@ BR=$$BRANDING
|
|||||||
target.path = /usr/bin
|
target.path = /usr/bin
|
||||||
INSTALLS += target
|
INSTALLS += target
|
||||||
|
|
||||||
contains(ANDROID_TARGET_ARCH,) {
|
|
||||||
ANDROID_ABIS = \
|
|
||||||
armeabi-v7a
|
|
||||||
}
|
|
||||||
|
|||||||
@ -52,12 +52,21 @@ MainPageTile {
|
|||||||
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
var page;
|
var page;
|
||||||
|
// Only one item? Go streight to the thing page
|
||||||
|
if (devicesProxy.count === 1) {
|
||||||
|
page = app.interfaceListToDevicePage([iface.name]);
|
||||||
|
pageStack.push(Qt.resolvedUrl("../devicepages/" + page), {thing: devicesProxy.get(0)})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// No (supported by app) interfaces at all? Open generic list
|
||||||
if (!iface) {
|
if (!iface) {
|
||||||
page = "GenericDeviceListPage.qml"
|
page = "GenericDeviceListPage.qml"
|
||||||
pageStack.push(Qt.resolvedUrl("../devicelistpages/" + page), {hiddenInterfaces: app.supportedInterfaces, filterTagId: root.filterTagId})
|
pageStack.push(Qt.resolvedUrl("../devicelistpages/" + page), {hiddenInterfaces: app.supportedInterfaces, filterTagId: root.filterTagId})
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Open interface specific things list
|
||||||
switch (iface.name) {
|
switch (iface.name) {
|
||||||
case "heating":
|
case "heating":
|
||||||
case "sensor":
|
case "sensor":
|
||||||
|
|||||||
@ -163,7 +163,7 @@ DeviceListPageBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -42,24 +42,13 @@ Page {
|
|||||||
property alias hiddenInterfaces: thingsProxyInternal.hiddenInterfaces
|
property alias hiddenInterfaces: thingsProxyInternal.hiddenInterfaces
|
||||||
property alias filterTagId: thingsProxyInternal.filterTagId
|
property alias filterTagId: thingsProxyInternal.filterTagId
|
||||||
|
|
||||||
Component.onCompleted: {
|
|
||||||
if (thingsProxyInternal.count === 1) {
|
|
||||||
enterPage(0, true)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
property var devicesProxy: thingsProxyInternal
|
property var devicesProxy: thingsProxyInternal
|
||||||
property var thingsProxy: thingsProxyInternal
|
property var thingsProxy: thingsProxyInternal
|
||||||
|
|
||||||
function enterPage(index, replace) {
|
function enterPage(index) {
|
||||||
var thing = thingsProxy.get(index);
|
var thing = thingsProxy.get(index);
|
||||||
var page = app.interfaceListToDevicePage(root.shownInterfaces);
|
var page = app.interfaceListToDevicePage(root.shownInterfaces);
|
||||||
// var page = "GenericDevicePage.qml";
|
pageStack.push(Qt.resolvedUrl("../devicepages/" + page), {thing: thingsProxy.get(index)})
|
||||||
if (replace) {
|
|
||||||
pageStack.replace(Qt.resolvedUrl("../devicepages/" + page), {thing: thingsProxy.get(index)})
|
|
||||||
} else {
|
|
||||||
pageStack.push(Qt.resolvedUrl("../devicepages/" + page), {thing: thingsProxy.get(index)})
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DevicesProxy {
|
DevicesProxy {
|
||||||
|
|||||||
@ -97,7 +97,7 @@ DeviceListPageBase {
|
|||||||
Binding { target: contentLoader.item; property: "device"; value: itemDelegate.device }
|
Binding { target: contentLoader.item; property: "device"; value: itemDelegate.device }
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -61,7 +61,7 @@ DeviceListPageBase {
|
|||||||
width: parent.width
|
width: parent.width
|
||||||
device: engine.deviceManager.devices.getDevice(model.id);
|
device: engine.deviceManager.devices.getDevice(model.id);
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -188,7 +188,7 @@ DeviceListPageBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -222,7 +222,7 @@ DeviceListPageBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -120,7 +120,7 @@ DeviceListPageBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -185,7 +185,7 @@ DeviceListPageBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -155,7 +155,7 @@ DeviceListPageBase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
enterPage(index, false)
|
enterPage(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user