subsurface/qt-mobile/qml/Preferences.qml
Dirk Hohndel ab36a3dad1 QML UI: make back key work for all pages
Reported by a beta tester for the GPS preferences, but affects a couple
more. We need to make sure that any page on the page stack is actually a
MobileComponents.Page, other wise the Android back key doesn't close the
page.

This commit changes GPS preferences, the theme test, and the currently
disabled download from divecomputer. it contains only the actual change
(wrap the current content in a page). The reindentation is a separate
commit for readability.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-02-10 20:58:11 -08:00

78 lines
1.6 KiB
QML

import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
import org.subsurfacedivelog.mobile 1.0
MobileComponents.Page {
GridLayout {
signal accept
columns: 2
width: parent.width - MobileComponents.Units.gridUnit
anchors {
fill: parent
margins: MobileComponents.Units.gridUnit / 2
}
MobileComponents.Heading {
text: "Preferences"
Layout.bottomMargin: MobileComponents.Units.largeSpacing / 2
Layout.columnSpan: 2
}
MobileComponents.Heading {
text: "Subsurface GPS data webservice"
level: 3
Layout.topMargin: MobileComponents.Units.largeSpacing
Layout.bottomMargin: MobileComponents.Units.largeSpacing / 2
Layout.columnSpan: 2
}
MobileComponents.Label {
text: "Distance threshold (meters)"
Layout.alignment: Qt.AlignRight
}
TextField {
id: distanceThreshold
text: manager.distanceThreshold
Layout.fillWidth: true
}
MobileComponents.Label {
text: "Time threshold (minutes)"
Layout.alignment: Qt.AlignRight
}
TextField {
id: timeThreshold
text: manager.timeThreshold
Layout.fillWidth: true
}
Item { width: MobileComponents.Units.gridUnit; height: width }
Item {
Layout.preferredHeight: saveButton.height
Layout.preferredWidth: saveButton.width
SubsurfaceButton {
id: saveButton
text: "Save"
anchors.centerIn: parent
onClicked: {
manager.distanceThreshold = distanceThreshold.text
manager.timeThreshold = timeThreshold.text
manager.savePreferences()
stackView.pop()
}
}
}
Item {
Layout.fillHeight: true
}
}
}