summaryrefslogtreecommitdiffstats
path: root/mobile-widgets
diff options
context:
space:
mode:
Diffstat (limited to 'mobile-widgets')
-rw-r--r--mobile-widgets/qml/About.qml9
-rw-r--r--mobile-widgets/qmlmanager.cpp12
-rw-r--r--mobile-widgets/qmlmanager.h1
3 files changed, 22 insertions, 0 deletions
diff --git a/mobile-widgets/qml/About.qml b/mobile-widgets/qml/About.qml
index 212ff5c6b..6d3bb28a3 100644
--- a/mobile-widgets/qml/About.qml
+++ b/mobile-widgets/qml/About.qml
@@ -56,5 +56,14 @@ Kirigami.ScrollablePage {
anchors.horizontalCenter: parent.Center
horizontalAlignment: Text.AlignHCenter
}
+ SsrfButton {
+ id: copyAppLogToClipboard
+ Layout.alignment: Qt.AlignHCenter
+ text: qsTr("Copy app log to clipboard")
+ onClicked: {
+ manager.copyAppLogToClipboard()
+ rootItem.returnTopPage()
+ }
+ }
}
}
diff --git a/mobile-widgets/qmlmanager.cpp b/mobile-widgets/qmlmanager.cpp
index fba9efb92..2b2d4cbbe 100644
--- a/mobile-widgets/qmlmanager.cpp
+++ b/mobile-widgets/qmlmanager.cpp
@@ -12,12 +12,14 @@
#include <QElapsedTimer>
#include <QTimer>
#include <QDateTime>
+#include <QClipboard>
#include <QBluetoothLocalDevice>
#include "qt-models/divelistmodel.h"
#include "qt-models/gpslistmodel.h"
#include "qt-models/completionmodels.h"
+#include "qt-models/messagehandlermodel.h"
#include "core/divelist.h"
#include "core/device.h"
#include "core/pref.h"
@@ -332,6 +334,16 @@ void QMLManager::cancelCredentialsPinSetup()
setShowPin(false);
}
+void QMLManager::copyAppLogToClipboard()
+{
+ /*
+ * The user clicked the button, so copy the log file
+ * to the clipboard for easy access
+ */
+ QString copyString = MessageHandlerModel::self()->logAsString();
+ QApplication::clipboard()->setText(copyString, QClipboard::Clipboard);
+}
+
void QMLManager::finishSetup()
{
// Initialize cloud credentials.
diff --git a/mobile-widgets/qmlmanager.h b/mobile-widgets/qmlmanager.h
index b158e43ee..1a7166b65 100644
--- a/mobile-widgets/qmlmanager.h
+++ b/mobile-widgets/qmlmanager.h
@@ -178,6 +178,7 @@ public slots:
void clearGpsData();
void clearCredentials();
void cancelCredentialsPinSetup();
+ void copyAppLogToClipboard();
void finishSetup();
void openLocalThenRemote(QString url);
void mergeLocalRepo();