summaryrefslogtreecommitdiff
path: root/lib/watchconnector.h
diff options
context:
space:
mode:
authorTomasz Sterna <tomek@xiaoka.com>2014-06-30 01:59:14 +0200
committerTomasz Sterna <tomek@xiaoka.com>2014-06-30 01:59:14 +0200
commit3c52767b24f27ac166f9c68e2fc73811527bafe1 (patch)
treed4a4050de526967ac4c3407f643b51d616cc31fe /lib/watchconnector.h
parent1d5e1b8dbb04d1ba916ff90445d22e0a145fd041 (diff)
Reworked WatchConnector connection/disconnection handling
Fixed crash after Pebble disconnecting
Diffstat (limited to 'lib/watchconnector.h')
-rw-r--r--lib/watchconnector.h16
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;