diff options
| author | Tomasz Sterna <tomek@xiaoka.com> | 2014-06-30 01:59:14 +0200 |
|---|---|---|
| committer | Tomasz Sterna <tomek@xiaoka.com> | 2014-06-30 01:59:14 +0200 |
| commit | 3c52767b24f27ac166f9c68e2fc73811527bafe1 (patch) | |
| tree | d4a4050de526967ac4c3407f643b51d616cc31fe /lib/watchconnector.h | |
| parent | 1d5e1b8dbb04d1ba916ff90445d22e0a145fd041 (diff) | |
Reworked WatchConnector connection/disconnection handling
Fixed crash after Pebble disconnecting
Diffstat (limited to 'lib/watchconnector.h')
| -rw-r--r-- | lib/watchconnector.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/lib/watchconnector.h b/lib/watchconnector.h index 616b9f5..bf404e6 100644 --- a/lib/watchconnector.h +++ b/lib/watchconnector.h @@ -31,6 +31,7 @@ #define WATCHCONNECTOR_H #include <QObject> +#include <QPointer> #include <QStringList> #include <QBluetoothDeviceInfo> #include <QBluetoothSocket> @@ -45,7 +46,7 @@ class WatchConnector : public QObject { Q_OBJECT Q_PROPERTY(QString name READ name NOTIFY nameChanged) - Q_PROPERTY(QString isConnected READ isConnected NOTIFY connectedChanged) + Q_PROPERTY(QString connected READ isConnected NOTIFY connectedChanged) public: enum { watchTIME = 11, @@ -109,17 +110,18 @@ public slots: void startPhoneCall(unsigned int cookie=0); void endPhoneCall(unsigned int cookie=0); - void deviceConnect(const QString name, const QString address); + void deviceConnect(const QString &name, const QString &address); void deviceDiscovered(const QBluetoothDeviceInfo&); - void handleWatch(const QBluetoothDeviceInfo&); - void readSocket(); - void connected(); - void disconnected(); + void handleWatch(const QString &name, const QString &address); + void onReadSocket(); + void onConnected(); + void onDisconnected(); void reconnect(); private: void decodeMsg(QByteArray data); - QBluetoothSocket *socket; + + QPointer<QBluetoothSocket> socket; bool is_connected; QString _last_name; QString _last_address; |
