appDisplay: Add :gesture-modes property
Both the main app grid and folders got a swipe tracker, which is active in both OVERVIEW and POPUP mode. The result is that two trackers fight over the same events, and everybody loses. Address this by adding a :gesture-modes property that determines the allowed modes for the associated swipe tracker. https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4256 Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1844>
This commit is contained in:
parent
6fc93b78bc
commit
803b944ffd
@ -131,6 +131,12 @@ function _findBestFolderName(apps) {
|
|||||||
|
|
||||||
var BaseAppView = GObject.registerClass({
|
var BaseAppView = GObject.registerClass({
|
||||||
GTypeFlags: GObject.TypeFlags.ABSTRACT,
|
GTypeFlags: GObject.TypeFlags.ABSTRACT,
|
||||||
|
Properties: {
|
||||||
|
'gesture-modes': GObject.ParamSpec.flags(
|
||||||
|
'gesture-modes', 'gesture-modes', 'gesture-modes',
|
||||||
|
GObject.ParamFlags.READWRITE | GObject.ParamFlags.CONSTRUCT_ONLY,
|
||||||
|
Shell.ActionMode, Shell.ActionMode.OVERVIEW),
|
||||||
|
},
|
||||||
Signals: {
|
Signals: {
|
||||||
'view-loaded': {},
|
'view-loaded': {},
|
||||||
},
|
},
|
||||||
@ -281,8 +287,7 @@ var BaseAppView = GObject.registerClass({
|
|||||||
|
|
||||||
// Swipe
|
// Swipe
|
||||||
this._swipeTracker = new SwipeTracker.SwipeTracker(this._scrollView,
|
this._swipeTracker = new SwipeTracker.SwipeTracker(this._scrollView,
|
||||||
Clutter.Orientation.HORIZONTAL,
|
Clutter.Orientation.HORIZONTAL, this.gestureModes);
|
||||||
Shell.ActionMode.OVERVIEW | Shell.ActionMode.POPUP);
|
|
||||||
this._swipeTracker.orientation = Clutter.Orientation.HORIZONTAL;
|
this._swipeTracker.orientation = Clutter.Orientation.HORIZONTAL;
|
||||||
this._swipeTracker.connect('begin', this._swipeBegin.bind(this));
|
this._swipeTracker.connect('begin', this._swipeBegin.bind(this));
|
||||||
this._swipeTracker.connect('update', this._swipeUpdate.bind(this));
|
this._swipeTracker.connect('update', this._swipeUpdate.bind(this));
|
||||||
@ -2196,6 +2201,7 @@ class FolderView extends BaseAppView {
|
|||||||
layout_manager: new Clutter.BinLayout(),
|
layout_manager: new Clutter.BinLayout(),
|
||||||
x_expand: true,
|
x_expand: true,
|
||||||
y_expand: true,
|
y_expand: true,
|
||||||
|
gesture_modes: Shell.ActionMode.POPUP,
|
||||||
});
|
});
|
||||||
|
|
||||||
// If it not expand, the parent doesn't take into account its preferred_width when allocating
|
// If it not expand, the parent doesn't take into account its preferred_width when allocating
|
||||||
|
Loading…
Reference in New Issue
Block a user