summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bluetooth.js7
-rw-r--r--extension.js9
2 files changed, 12 insertions, 4 deletions
diff --git a/bluetooth.js b/bluetooth.js
index a8ed5e0..7472b07 100644
--- a/bluetooth.js
+++ b/bluetooth.js
@@ -31,7 +31,12 @@ var BluetoothController = class {
this._connectSignal(this._model, 'row-changed', (arg0, arg1, iter) => {
if (iter) {
let device = this._buildDevice(iter);
- this.emit('device-changed', device);
+ if (device.isDefault) {
+ this.emit('default-adapter-changed', device);
+ }
+ else {
+ this.emit('device-changed', device);
+ }
}
});
diff --git a/extension.js b/extension.js
index bf89429..f154581 100644
--- a/extension.js
+++ b/extension.js
@@ -82,6 +82,11 @@ class BluetoothQuickConnect {
_connectControllerSignals() {
this._logger.info('Connecting bluetooth controller signals');
+ this._connectSignal(this._controller, 'default-adapter-changed', (ctrl) => {
+ this._logger.info('Default adapter changed event');
+ this._refresh();
+ });
+
this._connectSignal(this._controller, 'device-inserted', (ctrl, device) => {
this._logger.info(`Device inserted event: ${device.name}`);
if (device.isPaired) {
@@ -93,9 +98,7 @@ class BluetoothQuickConnect {
this._connectSignal(this._controller, 'device-changed', (ctrl, device) => {
this._logger.info(`Device changed event: ${device.name}`);
- if (device.isDefault)
- this._refresh();
- else if (device.isPaired)
+ if (device.isPaired)
this._syncMenuItem(device);
else
this._logger.info(`Skipping change event for unpaired device ${device.name}`);