[gnome-shell] system: Keep key focus when switching between alternatives
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] system: Keep key focus when switching between alternatives
- Date: Tue, 6 May 2014 12:28:17 +0000 (UTC)
commit 011fef4b2b35cbe85e67d157a54ac24022dd3d25
Author: Florian Müllner <fmuellner gnome org>
Date: Sat Apr 26 21:48:46 2014 +0200
system: Keep key focus when switching between alternatives
When switching between alternatives in AltSwitcher, the currently
visible child is replaced with the alternative. If the original
child has the key focus when it is removed from the stage, the
focus is lost. Detect this case and manually move the focus to
the new child.
https://bugzilla.gnome.org/show_bug.cgi?id=727259
js/ui/status/system.js | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
---
diff --git a/js/ui/status/system.js b/js/ui/status/system.js
index 83eb92c..b36c9d1 100644
--- a/js/ui/status/system.js
+++ b/js/ui/status/system.js
@@ -56,7 +56,10 @@ const AltSwitcher = new Lang.Class({
}
if (this.actor.get_child() != childToShow) {
+ let hasFocus = this.actor.contains(global.stage.get_key_focus());
this.actor.set_child(childToShow);
+ if (hasFocus)
+ childToShow.grab_key_focus();
// The actors might respond to hover, so
// sync the pointer to make sure they update.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]