[gnome-shell] network: being able to use keyboard to connect to a Wireless



commit d175a588f7949272e6a69bb956b6497a0b6897b0
Author: Alejandro Piñeiro <apinheiro igalia com>
Date:   Mon Oct 14 17:42:55 2013 +0200

    network: being able to use keyboard to connect to a Wireless
    
    https://bugzilla.gnome.org/show_bug.cgi?id=710144

 js/ui/status/network.js |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)
---
diff --git a/js/ui/status/network.js b/js/ui/status/network.js
index fdd95a7..0ff2037 100644
--- a/js/ui/status/network.js
+++ b/js/ui/status/network.js
@@ -559,6 +559,8 @@ const NMWirelessDialogItem = new Lang.Class({
             this.actor.grab_key_focus();
         }));
 
+        this.actor.connect('key-press-event', Lang.bind(this, this._onKeyPressEvent));
+
         this._content = new St.BoxLayout({ style_class: 'nm-dialog-item-box' });
         this.actor.set_child(this._content);
 
@@ -604,6 +606,16 @@ const NMWirelessDialogItem = new Lang.Class({
             return 'network-workgroup-symbolic';
         else
             return 'network-wireless-signal-' + signalToIcon(this._ap.strength) + '-symbolic';
+    },
+
+    _onKeyPressEvent: function(actor, event) {
+        let symbol = event.get_key_symbol();
+        if (symbol == Clutter.KEY_space || symbol == Clutter.KEY_Return
+            || symbol == Clutter.KEY_KP_Enter) {
+            this.emit('connect');
+            return true;
+        }
+        return false;
     }
 });
 Signals.addSignalMethods(NMWirelessDialogItem.prototype);
@@ -972,6 +984,9 @@ const NMWirelessDialog = new Lang.Class({
             Util.ensureActorVisibleInScrollView(this._scrollView, network.item.actor);
             this._selectNetwork(network);
         }));
+        network.item.connect('connect', Lang.bind(this, function() {
+            this._connect();
+        }));
     },
 });
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]