[gnome-shell] unlockDialog: Support clock/prompt switching via scrolling



commit d43401cc74acc7b877b61353c6aaeafed83744cb
Author: Florian Müllner <fmuellner gnome org>
Date:   Tue Feb 11 17:46:11 2020 +0100

    unlockDialog: Support clock/prompt switching via scrolling
    
    SwipeTracker "only" handles touch gestures and smooth scrolling.
    Scrolling still makes sense for regular mice as well though, so
    add handling for that as well.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/972

 js/ui/unlockDialog.js | 12 ++++++++++++
 1 file changed, 12 insertions(+)
---
diff --git a/js/ui/unlockDialog.js b/js/ui/unlockDialog.js
index 1816689a35..d535a721b6 100644
--- a/js/ui/unlockDialog.js
+++ b/js/ui/unlockDialog.js
@@ -443,6 +443,18 @@ var UnlockDialog = GObject.registerClass({
         this._swipeTracker.connect('update', this._swipeUpdate.bind(this));
         this._swipeTracker.connect('end', this._swipeEnd.bind(this));
 
+        this.connect('scroll-event', (o, event) => {
+            if (this._swipeTracker.canHandleScrollEvent(event))
+                return Clutter.EVENT_PROPAGATE;
+
+            let direction = event.get_scroll_direction();
+            if (direction === Clutter.ScrollDirection.UP)
+                this._showClock();
+            else if (direction === Clutter.ScrollDirection.DOWN)
+                this._showPrompt();
+            return Clutter.EVENT_STOP;
+        });
+
         this._activePage = null;
 
         let tapAction = new Clutter.TapAction();


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