diff options
-rw-r--r-- | qt-mobile/qml/CloudCredentials.qml | 14 | ||||
-rw-r--r-- | qt-mobile/qml/DiveList.qml | 11 | ||||
-rw-r--r-- | qt-mobile/qml/main.qml | 10 |
3 files changed, 29 insertions, 6 deletions
diff --git a/qt-mobile/qml/CloudCredentials.qml b/qt-mobile/qml/CloudCredentials.qml index fbd5ae169..229c080ca 100644 --- a/qt-mobile/qml/CloudCredentials.qml +++ b/qt-mobile/qml/CloudCredentials.qml @@ -83,7 +83,19 @@ Item { manager.cloudPassword = password.text manager.saveCloudPassword = savePassword.checked manager.saveCloudCredentials() - stackView.pop() + } + } + } + Item { + height: backButton.height + width: backButton.width + visible: diveListView.count > 0 && manager.credentialStatus != QMLManager.INVALID + SubsurfaceButton { + id: backButton + text: "Back to dive list" + anchors.centerIn: parent + onClicked: { + manager.credentialStatus = oldStatus } } } diff --git a/qt-mobile/qml/DiveList.qml b/qt-mobile/qml/DiveList.qml index 13cc10411..45644c2d3 100644 --- a/qt-mobile/qml/DiveList.qml +++ b/qt-mobile/qml/DiveList.qml @@ -11,6 +11,9 @@ MobileComponents.Page { objectName: "DiveList" color: MobileComponents.Theme.viewBackgroundColor + property int credentialStatus: manager.credentialStatus + property int numDives: diveListView.count + Component { id: diveDelegate MobileComponents.ListItem { @@ -152,7 +155,10 @@ MobileComponents.Page { } ScrollView { + id: outerScrollView anchors.fill: parent + opacity: 0.8 - startPage.opacity + visible: opacity > 0 ListView { id: diveListView anchors.fill: parent @@ -169,10 +175,7 @@ MobileComponents.Page { x: MobileComponents.Units.gridUnit / 2 height: paintedHeight + MobileComponents.Units.gridUnit / 2 verticalAlignment: Text.AlignBottom - text: "Dive Log" - opacity: 0.8 - startPage.opacity - visible: opacity > 0 } Connections { target: detailsWindow @@ -183,7 +186,7 @@ MobileComponents.Page { StartPage { id: startPage anchors.fill: parent - opacity: (diveListView.count == 0) ? 1.0 : 0 + opacity: (credentialStatus == QMLManager.VALID || credentialStatus == QMLManager.VALID_EMAIL) ? 0 : 1 visible: opacity > 0 Behavior on opacity { NumberAnimation { duration: MobileComponents.Units.shortDuration } } } diff --git a/qt-mobile/qml/main.qml b/qt-mobile/qml/main.qml index 1f1a65475..7cfc768bb 100644 --- a/qt-mobile/qml/main.qml +++ b/qt-mobile/qml/main.qml @@ -12,6 +12,7 @@ MobileComponents.ApplicationWindow { id: rootItem title: qsTr("Subsurface-mobile") property bool fullscreen: true + property int oldStatus: -1 FontMetrics { id: fontMetrics @@ -38,8 +39,15 @@ MobileComponents.ApplicationWindow { Action { text: "Cloud credentials" onTriggered: { - stackView.push(cloudCredWindow) detailsWindow.endEditMode() + oldStatus = manager.credentialStatus + if (diveList.numDives > 0) { + manager.startPageText = "Enter different credentials or return to dive list" + } else { + manager.startPageText = "Enter valdi cloud storage credentials" + } + + manager.credentialStatus = QMLManager.UNKNOWN } }, MobileComponents.ActionGroup { |