[gnome-shell] Support setting the image after construction



commit b5ee89459a701c788a2d7e4887618a62ca8338a6
Author: Giovanni Campagna <scampa giovanni gmail com>
Date:   Tue Jul 6 09:51:53 2010 +0200

    Support setting the image after construction
    
    This patch allows the icon in PopupImageMenuItems to be changed at
    any time, while preserving the item and all other properties (style,
    signals) attached and without rebuilding the whole menu. This is useful
    for images reflecting a dynamic status (e.g. cellular strength
    indicator or battery level)
    
    https://bugzilla.gnome.org/show_bug.cgi?id=623652

 js/ui/popupMenu.js |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)
---
diff --git a/js/ui/popupMenu.js b/js/ui/popupMenu.js
index e307d4e..33977e4 100644
--- a/js/ui/popupMenu.js
+++ b/js/ui/popupMenu.js
@@ -221,7 +221,8 @@ PopupImageMenuItem.prototype = {
         this.actor.set_child(box);
         this._imageBin = new St.Bin({ width: this._size, height: this._size });
         box.add(this._imageBin, { y_fill: false });
-        box.add(new St.Label({ text: text }), { expand: true });
+        this.label = new St.Label({ text: text });
+        box.add(this.label, { expand: true });
 
         if (!alwaysShowImage) {
             let settings = Gtk.Settings.get_default();
@@ -245,6 +246,11 @@ PopupImageMenuItem.prototype = {
             this._imageBin.set_child(img);
             this._imageBin.show();
         }
+    },
+    
+    setIcon: function(name) {
+        this._iconName = name;
+        this._onMenuImagesChanged();
     }
 };
 



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