[gnome-shell] popupMenu: dismiss the menu on touch events
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] popupMenu: dismiss the menu on touch events
- Date: Thu, 24 Jul 2014 16:16:57 +0000 (UTC)
commit da26a9daf85209cc32f13f6f9664dfa95dbe9d6a
Author: Carlos Garnacho <carlosg gnome org>
Date: Tue Jul 22 12:27:05 2014 +0200
popupMenu: dismiss the menu on touch events
No sequence checks are done, just any touch outside will dismiss the popup.
https://bugzilla.gnome.org/show_bug.cgi?id=733633
js/ui/popupMenu.js | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/js/ui/popupMenu.js b/js/ui/popupMenu.js
index 36d7f84..34986f7 100644
--- a/js/ui/popupMenu.js
+++ b/js/ui/popupMenu.js
@@ -106,6 +106,7 @@ const PopupBaseMenuItem = new Lang.Class({
if (this._activatable) {
this.actor.connect('button-release-event', Lang.bind(this, this._onButtonReleaseEvent));
+ this.actor.connect('touch-event', Lang.bind(this, this._onTouchEvent));
this.actor.connect('key-press-event', Lang.bind(this, this._onKeyPressEvent));
}
if (params.reactive && params.hover)
@@ -132,6 +133,14 @@ const PopupBaseMenuItem = new Lang.Class({
return Clutter.EVENT_STOP;
},
+ _onTouchEvent: function (actor, event) {
+ if (event.type() == Clutter.EventType.TOUCH_END) {
+ this.activate(event);
+ return Clutter.EVENT_STOP;
+ }
+ return Clutter.EVENT_PROPAGATE;
+ },
+
_onKeyPressEvent: function (actor, event) {
let symbol = event.get_key_symbol();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]