diff options
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | mobile-widgets/qml/RecoverCache.qml | 76 | ||||
-rw-r--r-- | mobile-widgets/qml/main.qml | 14 | ||||
-rw-r--r-- | mobile-widgets/qml/mobile-resources.qrc | 2 |
4 files changed, 93 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 8cf3a6c22..3fefcf10a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,4 @@ +Mobile: add advanved option to import dives from local cloud cache directories Mobile: fix broken editing of location, suit, buddy, and dive master Mobile: fix missing translations on Android CSV export: support for multiple cylinders diff --git a/mobile-widgets/qml/RecoverCache.qml b/mobile-widgets/qml/RecoverCache.qml new file mode 100644 index 000000000..ef47a53e8 --- /dev/null +++ b/mobile-widgets/qml/RecoverCache.qml @@ -0,0 +1,76 @@ +// SPDX-License-Identifier: GPL-2.0 +import QtQuick 2.6 +import org.kde.kirigami 2.4 as Kirigami +import org.subsurfacedivelog.mobile 1.0 + +Kirigami.ScrollablePage { + id: recoverCache + title: qsTr("Cloud Cache Import") + objectName: "recoverCache" + background: Rectangle { color: subsurfaceTheme.backgroundColor } + width: parent.width + height: parent.height + + Item { + TemplateLabel { + id: header + text: qsTr("Cloud Cache Import") + color: subsurfaceTheme.lightPrimaryTextColor + background: Rectangle { color: subsurfaceTheme.lightPrimaryColor } + font.pointSize: subsurfaceTheme.regularPointSize * 1.5 + padding: Kirigami.Units.gridUnit + width: recoverCache.width - 5 * Kirigami.Units.largeSpacing + height: 3.5 * Kirigami.Units.gridUnit + } + Rectangle { + id: subheader + z: 5 + width: recoverCache.width - 5 * Kirigami.Units.largeSpacing + height: 3 * Kirigami.Units.gridUnit + color: subsurfaceTheme.backgroundColor + anchors { + left: header.left + top: header.bottom + right: parent.right + } + TemplateLabel { + height: 2 * Kirigami.Units.gridUnit + text: qsTr("import data from the given cache repo") + anchors { + verticalCenter: parent.verticalCenter + horizontalCenter: parent.horizontalCenter + } + } + } + Rectangle { + id: spacer + anchors.top: subheader.bottom + height: Kirigami.Units.largeSpacing + width: recoverCache.width + color: subsurfaceTheme.backgroundColor + } + + Rectangle { + anchors { + left: header.left + right: parent.right + top: spacer.bottom + } + z: -5 + ListView { + height: recoverCache.height - 9 * Kirigami.Units.gridUnit + width: recoverCache.width + model: manager.cloudCacheList + delegate: TemplateButton { + height: 3 * Kirigami.Units.gridUnit + width: parent.width - 2 * Kirigami.Units.gridUnit + text: modelData + onClicked: { + console.log("import " + modelData) + manager.importCacheRepo(modelData) + } + } + } + } + } +} diff --git a/mobile-widgets/qml/main.qml b/mobile-widgets/qml/main.qml index 848c2f289..92ee7e075 100644 --- a/mobile-widgets/qml/main.qml +++ b/mobile-widgets/qml/main.qml @@ -534,6 +534,14 @@ if you have network connectivity and want to sync your data to cloud storage."), } } + Kirigami.Action { + text: qsTr("Access local cloud cache dirs") + onTriggered: { + globalDrawer.close() + showPage(recoverCache) + } + } + /* disable for now Kirigami.Action { text: qsTr("Dive planner") @@ -822,6 +830,12 @@ if you have network connectivity and want to sync your data to cloud storage."), id: mapPage visible: false } + + RecoverCache { + id: recoverCache + visible: false + } + /* this shouldn't be exposed unless someone will finish the work DivePlannerSetup { id: divePlannerSetupWindow diff --git a/mobile-widgets/qml/mobile-resources.qrc b/mobile-widgets/qml/mobile-resources.qrc index 4462ab1c8..7e6f9bc06 100644 --- a/mobile-widgets/qml/mobile-resources.qrc +++ b/mobile-widgets/qml/mobile-resources.qrc @@ -41,6 +41,8 @@ <file>ThemeTest.qml</file> <file>TripDetails.qml</file> <file>StartPage.qml</file> + <file>RecoverCache.qml</file> + <file>SsrfCheckBox.qml</file> <file>SsrfSwitch.qml</file> <file>SsrfTextField.qml</file> |