overview: Connect app-drag signals to show/hide overview elements
Anytime we begin dragging an app launcher, ensure the overview elements are showing. While searching, if an app-drag ends or is cancelled, hide the overview elements, but don't switch back to windows (which was the old behavior). https://bugzilla.gnome.org/show_bug.cgi?id=682050
This commit is contained in:
parent
4b0ba8b7b8
commit
6538f60322
@ -141,6 +141,7 @@ const Overview = new Lang.Class({
|
|||||||
this._modal = false; // have a modal grab
|
this._modal = false; // have a modal grab
|
||||||
this.animationInProgress = false;
|
this.animationInProgress = false;
|
||||||
this._hideInProgress = false;
|
this._hideInProgress = false;
|
||||||
|
this.searchActive = false;
|
||||||
|
|
||||||
// During transitions, we raise this to the top to avoid having the overview
|
// During transitions, we raise this to the top to avoid having the overview
|
||||||
// area be reactive; it causes too many issues such as double clicks on
|
// area be reactive; it causes too many issues such as double clicks on
|
||||||
@ -240,15 +241,37 @@ const Overview = new Lang.Class({
|
|||||||
|
|
||||||
this._viewSelector.connect('search-begin', Lang.bind(this,
|
this._viewSelector.connect('search-begin', Lang.bind(this,
|
||||||
function() {
|
function() {
|
||||||
|
this.searchActive = true;
|
||||||
this._dash.hide();
|
this._dash.hide();
|
||||||
this._thumbnailsBox.hide();
|
this._thumbnailsBox.hide();
|
||||||
}));
|
}));
|
||||||
this._viewSelector.connect('search-cancelled', Lang.bind(this,
|
this._viewSelector.connect('search-cancelled', Lang.bind(this,
|
||||||
function() {
|
function() {
|
||||||
|
this.searchActive = false;
|
||||||
this._dash.show();
|
this._dash.show();
|
||||||
this._thumbnailsBox.show();
|
this._thumbnailsBox.show();
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
this.connect('app-drag-begin',
|
||||||
|
Lang.bind(this, function () {
|
||||||
|
this._dash.show();
|
||||||
|
this._thumbnailsBox.show();
|
||||||
|
}));
|
||||||
|
this.connect('app-drag-cancelled',
|
||||||
|
Lang.bind(this, function () {
|
||||||
|
if (this.searchActive) {
|
||||||
|
this._dash.hide();
|
||||||
|
this._thumbnailsBox.hide();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
this.connect('app-drag-end',
|
||||||
|
Lang.bind(this, function () {
|
||||||
|
if (this.searchActive) {
|
||||||
|
this._dash.hide();
|
||||||
|
this._thumbnailsBox.hide();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
Main.layoutManager.connect('monitors-changed', Lang.bind(this, this._relayout));
|
Main.layoutManager.connect('monitors-changed', Lang.bind(this, this._relayout));
|
||||||
this._relayout();
|
this._relayout();
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user