[gnome-shell] Refactor show()/hide() sequences



commit 723a1c843a9d573fdd94403c08d4b72c2dac19b1
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Fri Mar 16 18:53:14 2012 -0400

    Refactor show()/hide() sequences
    
    We seem to have a lot of code that does something along the lines of:
    
        if (condition)
            actor.show();
        else
            actor.hide();
    
    ClutterActor already has such a thing for exactly this purpose: the 'visible'
    property. Use it instead of the mess above.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=672272

 js/gdm/powerMenu.js       |   39 +++++++--------------------------------
 js/ui/magnifier.js        |    5 +----
 js/ui/status/bluetooth.js |    5 +----
 js/ui/status/network.js   |   14 +++-----------
 js/ui/status/volume.js    |   10 +++-------
 js/ui/userMenu.js         |   15 +++------------
 js/ui/workspacesView.js   |    5 +----
 7 files changed, 19 insertions(+), 74 deletions(-)
---
diff --git a/js/gdm/powerMenu.js b/js/gdm/powerMenu.js
index 32edccd..3804ec5 100644
--- a/js/gdm/powerMenu.js
+++ b/js/gdm/powerMenu.js
@@ -60,10 +60,8 @@ const PowerMenuButton = new Lang.Class({
     },
 
     _updateVisibility: function() {
-        if (!this._haveSuspend && !this._haveShutdown && !this._haveRestart)
-            this.actor.hide();
-        else
-            this.actor.show();
+        let shouldBeVisible = (this._haveSuspend || this._haveShutdown || this._haveRestart);
+        this.actor.visible = shouldBeVisible;
     },
 
     _updateHaveShutdown: function() {
@@ -76,11 +74,7 @@ const PowerMenuButton = new Lang.Class({
                     else
                         this._haveShutdown = false;
 
-                    if (this._haveShutdown)
-                        this._powerOffItem.actor.show();
-                    else
-                        this._powerOffItem.actor.hide();
-
+                    this._powerOffItem.actor.visible = this._haveShutdown;
                     this._updateVisibility();
                 }));
         } else {
@@ -91,12 +85,7 @@ const PowerMenuButton = new Lang.Class({
                     else
                         this._haveShutdown = false;
 
-                    if (this._haveShutdown) {
-                        this._powerOffItem.actor.show();
-                    } else {
-                        this._powerOffItem.actor.hide();
-                    }
-
+                    this._powerOffItem.actor.visible = this._haveShutdown;
                     this._updateVisibility();
                 }));
         }
@@ -112,11 +101,7 @@ const PowerMenuButton = new Lang.Class({
                     else
                         this._haveRestart = false;
 
-                    if (this._haveRestart)
-                        this._restartItem.actor.show();
-                    else
-                        this._restartItem.actor.hide();
-
+                    this._restartItem.actor.visible = this._haveRestart;
                     this._updateVisibility();
                 }));
         } else {
@@ -127,12 +112,7 @@ const PowerMenuButton = new Lang.Class({
                     else
                         this._haveRestart = false;
 
-                    if (this._haveRestart) {
-                        this._restartItem.actor.show();
-                    } else {
-                        this._restartItem.actor.hide();
-                    }
-
+                    this._restartItem.actor.visible = this._haveRestart;
                     this._updateVisibility();
                 }));
         }
@@ -140,12 +120,7 @@ const PowerMenuButton = new Lang.Class({
 
     _updateHaveSuspend: function() {
         this._haveSuspend = this._upClient.get_can_suspend();
-
-        if (this._haveSuspend)
-            this._suspendItem.actor.show();
-        else
-            this._suspendItem.actor.hide();
-
+        this._suspendItem.actor.visible = this._haveSuspend;
         this._updateVisibility();
     },
 
diff --git a/js/ui/magnifier.js b/js/ui/magnifier.js
index b1db911..7608e08 100644
--- a/js/ui/magnifier.js
+++ b/js/ui/magnifier.js
@@ -1228,10 +1228,7 @@ const Crosshairs = new Lang.Class({
                     crosshairsActor = new Clutter.Clone({ source: this._actor });
                     this._clones.push(crosshairsActor);
                 }
-                if (this._actor.visible)
-                    crosshairsActor.show();
-                else
-                    crosshairsActor.hide();
+                crosshairsActor.visible = this._actor.visible;
 
                 container.add_actor(crosshairsActor);
                 container.raise_child(magnifiedMouse, crosshairsActor);
diff --git a/js/ui/status/bluetooth.js b/js/ui/status/bluetooth.js
index f6d2f30..c671e6b 100644
--- a/js/ui/status/bluetooth.js
+++ b/js/ui/status/bluetooth.js
@@ -106,10 +106,7 @@ const Indicator = new Lang.Class({
             /* TRANSLATORS: this means that bluetooth was disabled by hardware rfkill */
             this._killswitch.setStatus(_("hardware disabled"));
 
-        if (has_adapter)
-            this.actor.show();
-        else
-            this.actor.hide();
+        this.actor.visible = has_adapter;
 
         if (on) {
             this._discoverable.actor.show();
diff --git a/js/ui/status/network.js b/js/ui/status/network.js
index 36249d8..f1ba119 100644
--- a/js/ui/status/network.js
+++ b/js/ui/status/network.js
@@ -707,10 +707,7 @@ const NMDeviceWired = new Lang.Class({
         // the device
         // we can do it here because addConnection and removeConnection
         // both call _createSection at some point
-        if (this._connections.length <= 1)
-            this.section.actor.hide();
-        else
-            this.section.actor.show();
+        this.section.actor.visible = this._connections.length <= 1;
     },
 
     _createAutomaticConnection: function() {
@@ -1038,13 +1035,8 @@ const NMDeviceWireless = new Lang.Class({
     },
 
     setEnabled: function(enabled) {
-        if (enabled) {
-            this.statusItem.actor.show();
-            this.section.actor.show();
-        } else {
-            this.statusItem.actor.hide();
-            this.section.actor.hide();
-        }
+        this.statusItem.actor.visible = enabled;
+        this.section.actor.visible = enabled;
     },
 
     activate: function() {
diff --git a/js/ui/status/volume.js b/js/ui/status/volume.js
index ff907ca..6951cb1 100644
--- a/js/ui/status/volume.js
+++ b/js/ui/status/volume.js
@@ -149,13 +149,9 @@ const Indicator = new Lang.Class({
                 }
             }
         }
-        if (showInput) {
-            this._inputTitle.actor.show();
-            this._inputSlider.actor.show();
-        } else {
-            this._inputTitle.actor.hide();
-            this._inputSlider.actor.hide();
-        }
+
+        this._inputTitle.actor.visible = showInput;
+        this._inputSlider.actor.visible = showInput;
     },
 
     _volumeToIcon: function(volume) {
diff --git a/js/ui/userMenu.js b/js/ui/userMenu.js
index 4894892..01b4702 100644
--- a/js/ui/userMenu.js
+++ b/js/ui/userMenu.js
@@ -554,18 +554,12 @@ const UserMenuButton = new Lang.Class({
 
     _updateLogout: function() {
         let allowLogout = !this._lockdownSettings.get_boolean(DISABLE_LOG_OUT_KEY);
-        if (allowLogout)
-            this._logoutItem.actor.show();
-        else
-            this._logoutItem.actor.hide();
+        this._logoutItem.actor.visible = allowLogout;
     },
 
     _updateLockScreen: function() {
         let allowLockScreen = !this._lockdownSettings.get_boolean(DISABLE_LOCK_SCREEN_KEY);
-        if (allowLockScreen)
-            this._lockScreenItem.actor.show();
-        else
-            this._lockScreenItem.actor.hide();
+        this._logoutItem.actor.visible = allowLockScreen;
     },
 
     _updateHaveShutdown: function() {
@@ -584,10 +578,7 @@ const UserMenuButton = new Lang.Class({
         if (!this._suspendOrPowerOffItem)
             return;
 
-        if (!this._haveShutdown && !this._haveSuspend)
-            this._suspendOrPowerOffItem.actor.hide();
-        else
-            this._suspendOrPowerOffItem.actor.show();
+        this._suspendOrPowerOffItem.actor.visible = this._haveShutdown || this._haveSuspend;
 
         // If we can't suspend show Power Off... instead
         // and disable the alt key
diff --git a/js/ui/workspacesView.js b/js/ui/workspacesView.js
index 272aa47..e364509 100644
--- a/js/ui/workspacesView.js
+++ b/js/ui/workspacesView.js
@@ -844,10 +844,7 @@ const WorkspacesDisplay = new Lang.Class({
                         if (!primaryView)
                             return;
                         primaryView.actor.opacity = opacity;
-                        if (opacity == 0)
-                            primaryView.actor.hide();
-                        else
-                            primaryView.actor.show();
+                        primaryView.actor.visible = opacity != 0;
                     }));
         }));
     },



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]