aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-mobile/qml/CloudCredentials.qml14
-rw-r--r--qt-mobile/qml/DiveList.qml11
-rw-r--r--qt-mobile/qml/main.qml10
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 {