switcherPopup: Cancel the OSD popup before showing

It is irritating to show two different system popups at the same
time, so let switcher popups like alt-tab cancel out the OSD.

https://bugzilla.gnome.org/show_bug.cgi?id=613543
This commit is contained in:
Florian Müllner 2013-03-02 19:56:37 +01:00
parent 90ea27c423
commit deb77a4dde
2 changed files with 10 additions and 0 deletions

View File

@ -140,6 +140,15 @@ const OsdWindow = new Lang.Class({
Lang.bind(this, this._hide));
},
cancel: function() {
if (!this._hideTimeoutId)
return;
Mainloop.source_remove(this._hideTimeoutId);
this._hideTimeoutId = 0;
this._hide();
},
_hide: function() {
Tweener.addTween(this.actor,
{ opacity: 0,

View File

@ -160,6 +160,7 @@ const SwitcherPopup = new Lang.Class({
// disturbed by the popup briefly flashing.
this._initialDelayTimeoutId = Mainloop.timeout_add(POPUP_DELAY_TIMEOUT,
Lang.bind(this, function () {
Main.osdWindow.cancel();
this.actor.opacity = 255;
this._initialDelayTimeoutId = 0;
}));