windowManager: Allow disabling touchpad workspace switch action
Just like actual ClutterActions, it can make sense to temporarily disable the touchpad action, so add an appropriate property. https://gitlab.gnome.org/GNOME/gnome-shell/issues/516
This commit is contained in:
parent
de6512be1a
commit
e83f2344f6
@ -459,10 +459,24 @@ var TouchpadWorkspaceSwitchAction = class {
|
||||
constructor(actor) {
|
||||
this._dx = 0;
|
||||
this._dy = 0;
|
||||
this._enabled = true;
|
||||
actor.connect('captured-event', this._handleEvent.bind(this));
|
||||
this._touchpadSettings = new Gio.Settings({schema_id: 'org.gnome.desktop.peripherals.touchpad'});
|
||||
}
|
||||
|
||||
get enabled() {
|
||||
return this._enabled;
|
||||
}
|
||||
|
||||
set enabled(enabled) {
|
||||
if (this._enabled == enabled)
|
||||
return;
|
||||
|
||||
this._enabled = enabled;
|
||||
if (!enabled)
|
||||
this.emit('cancel');
|
||||
}
|
||||
|
||||
_checkActivated() {
|
||||
let dir;
|
||||
|
||||
@ -493,6 +507,9 @@ var TouchpadWorkspaceSwitchAction = class {
|
||||
if ((allowedModes & Main.actionMode) == 0)
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
|
||||
if (!this._enabled)
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
|
||||
if (event.get_gesture_phase() == Clutter.TouchpadGesturePhase.UPDATE) {
|
||||
let [dx, dy] = event.get_gesture_motion_delta();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user