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



commit 972267e215d402b39a0cc80990d2ee4976f400e4
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 6d51b45..807163d 100644
--- a/js/ui/messageTray.js
+++ b/js/ui/messageTray.js
@@ -1234,12 +1234,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 });
@@ -1248,7 +1242,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;
@@ -1265,14 +1265,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);
@@ -2405,7 +2397,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 a6f825a..5b93444 100644
--- a/js/ui/screenShield.js
+++ b/js/ui/screenShield.js
@@ -187,7 +187,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);
@@ -245,7 +245,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]