From 882b7b9327edb3dd73fa3e82eba83c0405f91b83 Mon Sep 17 00:00:00 2001 From: Tomasz Sterna Date: Tue, 9 Jun 2015 16:14:42 +0200 Subject: Handle multiple paired Pebbles Moved Pebble discovery to WatchConnector. Removed empty DBusConnector. Minor firmware handling fixes. --- daemon/watchconnector.h | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'daemon/watchconnector.h') diff --git a/daemon/watchconnector.h b/daemon/watchconnector.h index 518493b..fa65f6b 100644 --- a/daemon/watchconnector.h +++ b/daemon/watchconnector.h @@ -8,10 +8,8 @@ #include #include #include -#include -#include #include -#include +#include #include class WatchConnector : public QObject @@ -21,7 +19,7 @@ class WatchConnector : public QObject Q_ENUMS(Endpoint) - Q_PROPERTY(QString name READ name NOTIFY nameChanged) + Q_PROPERTY(QString name READ name NOTIFY pebbleChanged) Q_PROPERTY(QString connected READ isConnected NOTIFY connectedChanged) public: @@ -205,7 +203,8 @@ public: virtual ~WatchConnector(); inline bool isConnected() const { return is_connected; } - inline QString name() const { return socket != nullptr ? socket->peerName() : ""; } + inline QString name() const { return pebbles.keys(address()).at(0); } + inline QBluetoothAddress address() const { return socket != nullptr ? socket->peerAddress() : QBluetoothAddress(); } inline WatchVersions versions() const { return _versions; } void setEndpointHandler(uint endpoint, const EndpointHandlerFunc &func); @@ -215,15 +214,15 @@ public: static QString decodeEndpoint(uint val); signals: - void nameChanged(); + void pebbleChanged(); void versionsChanged(); void connectedChanged(); public slots: - void deviceConnect(const QString &name, const QString &address); + bool findPebbles(); void scheduleReconnect(); + void connect(); void disconnect(); - void reconnect(); void sendMessage(uint endpoint, const QByteArray &data, const EndpointHandlerFunc &callback = EndpointHandlerFunc()); void ping(uint cookie); @@ -248,8 +247,6 @@ public slots: void endPhoneCall(uint cookie=0); private slots: - void deviceDiscovered(const QBluetoothDeviceInfo&); - void handleWatch(const QString &name, const QString &address); void onReadSocket(); void onBytesWritten(qint64); void onConnected(); @@ -267,8 +264,9 @@ private: QByteArray writeData; QTimer reconnectTimer; QTimer timeSyncTimer; - QString _last_name; - QString _last_address; + QMap pebbles; + int currentPebble; + quint64 _last_address; WatchVersions _versions; }; -- cgit v1.2.3