overview: Send the clone with the window-drag events

This allows clients that care about the actual item we're dragging to
make smarter decisions without adding a drag monitor themselves.
This commit is contained in:
Jasper St. Pierre 2013-09-11 14:20:39 -04:00
parent 026fd4cf35
commit e4c07875a3
3 changed files with 18 additions and 18 deletions

View File

@ -443,17 +443,17 @@ const Overview = new Lang.Class({
this._inDrag = false;
},
beginWindowDrag: function(source) {
this.emit('window-drag-begin');
beginWindowDrag: function(clone) {
this.emit('window-drag-begin', clone);
this._inDrag = true;
},
cancelledWindowDrag: function(source) {
this.emit('window-drag-cancelled');
cancelledWindowDrag: function(clone) {
this.emit('window-drag-cancelled', clone);
},
endWindowDrag: function(source) {
this.emit('window-drag-end');
endWindowDrag: function(clone) {
this.emit('window-drag-end', clone);
this._inDrag = false;
},

View File

@ -1468,17 +1468,17 @@ const Workspace = new Lang.Class({
clone.connect('selected',
Lang.bind(this, this._onCloneSelected));
clone.connect('drag-begin',
Lang.bind(this, function(clone) {
Main.overview.beginWindowDrag();
Lang.bind(this, function() {
Main.overview.beginWindowDrag(clone);
overlay.hide();
}));
clone.connect('drag-cancelled',
Lang.bind(this, function(clone) {
Main.overview.cancelledWindowDrag();
Lang.bind(this, function() {
Main.overview.cancelledWindowDrag(clone);
}));
clone.connect('drag-end',
Lang.bind(this, function(clone) {
Main.overview.endWindowDrag();
Lang.bind(this, function() {
Main.overview.endWindowDrag(clone);
overlay.show();
}));
clone.connect('size-changed',

View File

@ -438,16 +438,16 @@ const WorkspaceThumbnail = new Lang.Class({
this.activate(time);
}));
clone.connect('drag-begin',
Lang.bind(this, function(clone) {
Main.overview.beginWindowDrag();
Lang.bind(this, function() {
Main.overview.beginWindowDrag(clone);
}));
clone.connect('drag-cancelled',
Lang.bind(this, function(clone) {
Main.overview.cancelledWindowDrag();
Lang.bind(this, function() {
Main.overview.cancelledWindowDrag(clone);
}));
clone.connect('drag-end',
Lang.bind(this, function(clone) {
Main.overview.endWindowDrag();
Lang.bind(this, function() {
Main.overview.endWindowDrag(clone);
}));
this._contents.add_actor(clone.actor);