From f2edcb9bdf77110835f4e5c22a654d6ecdff402e Mon Sep 17 00:00:00 2001 From: Cosimo Cecchi Date: Thu, 24 Jan 2013 16:35:11 -0500 Subject: [PATCH] viewSelector: notify on active page changes In order to do this, we also need to move the assignment of this._activePage from the animation onComplete callback to the function itself. https://bugzilla.gnome.org/show_bug.cgi?id=682050 --- js/ui/viewSelector.js | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/js/ui/viewSelector.js b/js/ui/viewSelector.js index c925cfdae..e1d2ef535 100644 --- a/js/ui/viewSelector.js +++ b/js/ui/viewSelector.js @@ -201,24 +201,27 @@ const ViewSelector = new Lang.Class({ }, _showPage: function(page) { - if(page == this._activePage) + if (page == this._activePage) return; - if(this._activePage) { - Tweener.addTween(this._activePage, + let oldPage = this._activePage; + if (oldPage) { + Tweener.addTween(oldPage, { opacity: 0, time: 0.1, transition: 'easeOutQuad', onComplete: Lang.bind(this, function() { - this._activePage.hide(); - this._activePage = page; + oldPage.hide(); }) }); } - page.show(); - Tweener.addTween(page, + this._activePage = page; + this._activePage.show(); + this.emit('page-changed'); + + Tweener.addTween(this._activePage, { opacity: 255, time: 0.1, transition: 'easeOutQuad'