appDisplay: Add pan action to FolderView
Since we have now a ScrollView in the FolderView, add support for the pan action https://bugzilla.gnome.org/show_bug.cgi?id=706081
This commit is contained in:
parent
3f24a87034
commit
1e02081cd2
@ -884,6 +884,10 @@ const FolderView = new Lang.Class({
|
|||||||
let scrollableContainer = new St.BoxLayout({ vertical: true, reactive: true });
|
let scrollableContainer = new St.BoxLayout({ vertical: true, reactive: true });
|
||||||
scrollableContainer.add_actor(this._grid.actor);
|
scrollableContainer.add_actor(this._grid.actor);
|
||||||
this.actor.add_actor(scrollableContainer);
|
this.actor.add_actor(scrollableContainer);
|
||||||
|
|
||||||
|
let action = new Clutter.PanAction({ interpolate: true });
|
||||||
|
action.connect('pan', Lang.bind(this, this._onPan));
|
||||||
|
this.actor.add_action(action);
|
||||||
},
|
},
|
||||||
|
|
||||||
_getItemId: function(item) {
|
_getItemId: function(item) {
|
||||||
@ -921,6 +925,13 @@ const FolderView = new Lang.Class({
|
|||||||
return icon;
|
return icon;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_onPan: function(action) {
|
||||||
|
let [dist, dx, dy] = action.get_motion_delta(0);
|
||||||
|
let adjustment = this.actor.vscroll.adjustment;
|
||||||
|
adjustment.value -= (dy / this.actor.height) * adjustment.page_size;
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
|
||||||
adaptToSize: function(width, height) {
|
adaptToSize: function(width, height) {
|
||||||
this._parentAvailableWidth = width;
|
this._parentAvailableWidth = width;
|
||||||
this._parentAvailableHeight = height;
|
this._parentAvailableHeight = height;
|
||||||
|
Loading…
Reference in New Issue
Block a user