summaryrefslogtreecommitdiffstats
path: root/mobile-widgets/qmlmanager.h
diff options
context:
space:
mode:
authorGravatar Jan Mulder <jlmulder@xs4all.nl>2017-10-12 09:43:40 +0200
committerGravatar Jan Mulder <jlmulder@xs4all.nl>2017-10-12 09:43:40 +0200
commitba4058667a21a278a394054fea70595358ac41f2 (patch)
tree64fdae97a11d6db2505029eef98da9e9a8abfb92 /mobile-widgets/qmlmanager.h
parentfa5e685279b66b14d8069b5214890ca7148487ef (diff)
downloadsubsurface-ba4058667a21a278a394054fea70595358ac41f2.tar.gz
mobile: enable switching BT on/off during session.
This commit implements possible switching BT on and off during a session, so not needing a restart of the app when the user forgot to switch it on when starting the app. For this, the following needed to be done: 1) create a handler that reacts on local BT device status changes. 2) repopulate the connection list in the download screen when a BT status change is detected. Notice the subtile change of the Q_INVOKABLE btEnabled() function to a Q_PROPERTY. This gives a nice dynamic behaviour when switching BT on/off with the app open. Fixes: #556 Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
Diffstat (limited to 'mobile-widgets/qmlmanager.h')
-rw-r--r--mobile-widgets/qmlmanager.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/mobile-widgets/qmlmanager.h b/mobile-widgets/qmlmanager.h
index 1da147c9f..45851dfdf 100644
--- a/mobile-widgets/qmlmanager.h
+++ b/mobile-widgets/qmlmanager.h
@@ -45,6 +45,7 @@ class QMLManager : public QObject {
Q_PROPERTY(QString progressMessage READ progressMessage WRITE setProgressMessage NOTIFY progressMessageChanged)
Q_PROPERTY(bool libdcLog READ libdcLog WRITE setLibdcLog NOTIFY libdcLogChanged)
Q_PROPERTY(bool developer READ developer WRITE setDeveloper NOTIFY developerChanged)
+ Q_PROPERTY(bool btEnabled READ btEnabled WRITE setBtEnabled NOTIFY btEnabledChanged)
public:
QMLManager();
@@ -124,6 +125,9 @@ public:
bool developer() const;
void setDeveloper(bool value);
+ bool btEnabled() const;
+ void setBtEnabled(bool value);
+
typedef void (QMLManager::*execute_function_type)();
DiveListSortModel *dlSortModel;
@@ -134,7 +138,7 @@ public:
bool showPin() const;
void setShowPin(bool enable);
Q_INVOKABLE void setStatusbarColor(QColor color);
- Q_INVOKABLE bool btEnabled() const;
+ void btHostModeChange(QBluetoothLocalDevice::HostMode state);
#if defined(Q_OS_ANDROID)
void writeToAppLogFile(QString logText);
@@ -258,6 +262,7 @@ signals:
void progressMessageChanged();
void libdcLogChanged();
void developerChanged();
+ void btEnabledChanged();
};
#endif