From aa426842f275ce4ddabbe60bfec8781adda27dfc Mon Sep 17 00:00:00 2001 From: Giovanni Campagna Date: Tue, 28 Jan 2014 21:47:37 +0100 Subject: [PATCH] BluetoothMenu: show the submenu when active but not connected Following the updated designs for system status, show the submenu but not the indicator when bluetooth radio is on but no device is connected. https://bugzilla.gnome.org/show_bug.cgi?id=709353 --- js/ui/status/bluetooth.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/js/ui/status/bluetooth.js b/js/ui/status/bluetooth.js index a220d7b3c..920fbe26a 100644 --- a/js/ui/status/bluetooth.js +++ b/js/ui/status/bluetooth.js @@ -38,7 +38,10 @@ const Indicator = new Lang.Class({ log(error.message); return; } + + this._sync(); })); + this._proxy.connect('g-properties-changed', Lang.bind(this, this._sync)); // The Bluetooth menu only appears when Bluetooth is in use, // so just statically build it with a "Turn Off" menu item. @@ -90,11 +93,12 @@ const Indicator = new Lang.Class({ _sync: function() { let nDevices = this._getNConnectedDevices(); - let on = nDevices > 0; - this._indicator.visible = on; - this._item.actor.visible = on; + this._indicator.visible = nDevices > 0; + this._item.actor.visible = !this._proxy.BluetoothAirplaneMode; - if (on) + if (nDevices > 0) this._item.status.text = ngettext("%d Connected Device", "%d Connected Devices", nDevices).format(nDevices); + else + this._item.status.text = _("Not Connected"); }, });