[gnome-shell] messageTray: make SummaryItem._closeButton public



commit 4f876995de42397e9dce2d3fe6f9e27322a869fd
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Wed Sep 19 00:36:05 2012 -0300

    messageTray: make SummaryItem._closeButton public
    
    Use this to show/hide the close button instead of closeButtonVisible.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=682237

 js/ui/messageTray.js  |   26 ++++++++++----------------
 js/ui/screenShield.js |    4 ++--
 2 files changed, 12 insertions(+), 18 deletions(-)
---
diff --git a/js/ui/messageTray.js b/js/ui/messageTray.js
index bd2ab2f..a425926 100644
--- a/js/ui/messageTray.js
+++ b/js/ui/messageTray.js
@@ -1237,12 +1237,6 @@ const SummaryItem = new Lang.Class({
 
         this.notificationStackWidget = new St.Widget({ layout_manager: new Clutter.BinLayout() });
 
-        this._closeButton = makeCloseButton();
-        this._closeButton.connect('clicked', Lang.bind(this, function() {
-            source.destroy();
-            source.emit('done-displaying-content');
-        }));
-
         this.notificationStackView = new St.ScrollView({ style_class: source.isChat ? '' : 'summary-notification-stack-scrollview',
                                                          vscrollbar_policy: source.isChat ? Gtk.PolicyType.NEVER : Gtk.PolicyType.AUTOMATIC,
                                                          hscrollbar_policy: Gtk.PolicyType.NEVER });
@@ -1251,7 +1245,13 @@ const SummaryItem = new Lang.Class({
                                                     vertical: true });
         this.notificationStackView.add_actor(this.notificationStack);
         this.notificationStackWidget.add_actor(this.notificationStackView);
-        this.notificationStackWidget.add_actor(this._closeButton);
+
+        this.closeButton = makeCloseButton();
+        this.closeButton.connect('clicked', Lang.bind(this, function() {
+            source.destroy();
+            source.emit('done-displaying-content');
+        }));
+        this.notificationStackWidget.add_actor(this.closeButton);
         this._stackedNotifications = [];
 
         this._oldMaxScrollAdjustment = 0;
@@ -1268,14 +1268,6 @@ const SummaryItem = new Lang.Class({
             global.focus_manager.add_group(this.rightClickMenu);
     },
 
-    get closeButtonVisible() {
-        return this._closeButton.visible;
-    },
-
-    set closeButtonVisible(v) {
-        this._closeButton.visible = v;
-    },
-
     _onKeyPress: function(actor, event) {
         if (event.get_key_symbol() == Clutter.KEY_Up) {
             actor.emit('clicked', 1);
@@ -2419,7 +2411,9 @@ const MessageTray = new Lang.Class({
             this._notificationQueue = newQueue;
 
             this._summaryBoxPointer.bin.child = this._summaryBoxPointerItem.notificationStackWidget;
-            this._summaryBoxPointerItem.closeButtonVisible = true;
+
+            let closeButton = this._summaryBoxPointerItem.closeButton;
+            closeButton.show();
             this._summaryBoxPointerItem.prepareNotificationStackForShowing();
         } else if (this._clickedSummaryItemMouseButton == 3) {
             this._summaryBoxPointer.bin.child = this._clickedSummaryItem.rightClickMenu;
diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js
index 2069568..a02182d 100644
--- a/js/ui/screenShield.js
+++ b/js/ui/screenShield.js
@@ -186,7 +186,7 @@ const NotificationsBox = new Lang.Class({
 
         if (obj.resident) {
             this._residentNotificationBox.add(item.notificationStackWidget);
-            item.closeButtonVisible = false;
+            item.closeButton.hide();
             item.prepareNotificationStackForShowing();
         } else {
             [obj.sourceBox, obj.countLabel] = this._makeNotificationSource(item.source);
@@ -244,7 +244,7 @@ const NotificationsBox = new Lang.Class({
             obj.resident = true;
 
             this._residentNotificationBox.add(obj.item.notificationStackWidget);
-            obj.item.closeButtonVisible = false;
+            obj.item.closeButton.hide();
             obj.item.prepareNotificationStackForShowing();
         } else {
             // just update the counter



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