[gnome-shell] overviewControls: Slide dash and workspace switcher when	entering and exiting overview
- From: Adel Gadllah <agadllah src gnome org>
 
- To: commits-list gnome org
 
- Cc: 
 
- Subject: [gnome-shell] overviewControls: Slide dash and workspace switcher when	entering and exiting overview
 
- Date: Thu, 15 Aug 2013 16:28:27 +0000 (UTC)
 
commit 6a7fa52879d5326dde1166caae3eaaa713dad6bc
Author: Tarun Kumar Joshi <tj joshi7 gmail com>
Date:   Tue Jun 25 03:10:30 2013 +0530
    overviewControls: Slide dash and workspace switcher when entering and exiting overview
    
    Adds a slide in effect to dash and workspace switcher when entering the
    overview and adds a slide out effect while exiting it.
    
    http://bugzilla.gnome.org/show_bug.cgi?id=694262
 js/ui/overviewControls.js |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)
---
diff --git a/js/ui/overviewControls.js b/js/ui/overviewControls.js
index b04008d..12ab2aa 100644
--- a/js/ui/overviewControls.js
+++ b/js/ui/overviewControls.js
@@ -207,6 +207,7 @@ const SlidingControl = new Lang.Class({
 
     slideIn: function() {
         this.visible = true;
+        this._updateTranslation();
         // we will update slideX and the translation from pageEmpty
     },
 
@@ -246,6 +247,7 @@ const ThumbnailsSlider = new Lang.Class({
         this.actor.add_actor(this._thumbnailsBox.actor);
 
         Main.layoutManager.connect('monitors-changed', Lang.bind(this, this.updateSlide));
+        Main.overview.connect('hiding', Lang.bind(this, this.slideOut));
         this.actor.connect('notify::hover', Lang.bind(this, this.updateSlide));
         this._thumbnailsBox.actor.bind_property('visible', this.actor, 'visible', 
GObject.BindingFlags.SYNC_CREATE);
     },
@@ -273,6 +275,13 @@ const ThumbnailsSlider = new Lang.Class({
         return alwaysZoomOut;
     },
 
+    _onOverviewShowing: function() {
+        this.visible = true;
+        this.layout.slideX = this.getSlide();
+        this.actor.translation_x = this._getTranslation();
+        this.slideIn();
+    },
+
     getNonExpandedWidth: function() {
         let child = this.actor.get_first_child();
         return child.get_theme_node().get_length('visible-width');
@@ -323,6 +332,7 @@ const DashSlider = new Lang.Class({
         this.actor.add_actor(this._dash.actor);
 
         this._dash.connect('icon-size-changed', Lang.bind(this, this.updateSlide));
+        Main.overview.connect('hiding', Lang.bind(this, this.slideOut));
     },
 
     getSlide: function() {
@@ -332,6 +342,13 @@ const DashSlider = new Lang.Class({
             return 0;
     },
 
+    _onOverviewShowing: function() {
+        this.visible = true;
+        this.layout.slideX = this.getSlide();
+        this.actor.translation_x = this._getTranslation();
+        this.slideIn();
+    },
+
     _onWindowDragBegin: function() {
         this.fadeHalf();
     },
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]