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
This commit is contained in:
Jasper St. Pierre 2012-09-19 00:36:05 -03:00 committed by Florian Müllner
parent 9cf4a76196
commit 4f876995de
2 changed files with 12 additions and 18 deletions

View File

@ -1237,12 +1237,6 @@ const SummaryItem = new Lang.Class({
this.notificationStackWidget = new St.Widget({ layout_manager: new Clutter.BinLayout() }); 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', this.notificationStackView = new St.ScrollView({ style_class: source.isChat ? '' : 'summary-notification-stack-scrollview',
vscrollbar_policy: source.isChat ? Gtk.PolicyType.NEVER : Gtk.PolicyType.AUTOMATIC, vscrollbar_policy: source.isChat ? Gtk.PolicyType.NEVER : Gtk.PolicyType.AUTOMATIC,
hscrollbar_policy: Gtk.PolicyType.NEVER }); hscrollbar_policy: Gtk.PolicyType.NEVER });
@ -1251,7 +1245,13 @@ const SummaryItem = new Lang.Class({
vertical: true }); vertical: true });
this.notificationStackView.add_actor(this.notificationStack); this.notificationStackView.add_actor(this.notificationStack);
this.notificationStackWidget.add_actor(this.notificationStackView); 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._stackedNotifications = [];
this._oldMaxScrollAdjustment = 0; this._oldMaxScrollAdjustment = 0;
@ -1268,14 +1268,6 @@ const SummaryItem = new Lang.Class({
global.focus_manager.add_group(this.rightClickMenu); global.focus_manager.add_group(this.rightClickMenu);
}, },
get closeButtonVisible() {
return this._closeButton.visible;
},
set closeButtonVisible(v) {
this._closeButton.visible = v;
},
_onKeyPress: function(actor, event) { _onKeyPress: function(actor, event) {
if (event.get_key_symbol() == Clutter.KEY_Up) { if (event.get_key_symbol() == Clutter.KEY_Up) {
actor.emit('clicked', 1); actor.emit('clicked', 1);
@ -2419,7 +2411,9 @@ const MessageTray = new Lang.Class({
this._notificationQueue = newQueue; this._notificationQueue = newQueue;
this._summaryBoxPointer.bin.child = this._summaryBoxPointerItem.notificationStackWidget; this._summaryBoxPointer.bin.child = this._summaryBoxPointerItem.notificationStackWidget;
this._summaryBoxPointerItem.closeButtonVisible = true;
let closeButton = this._summaryBoxPointerItem.closeButton;
closeButton.show();
this._summaryBoxPointerItem.prepareNotificationStackForShowing(); this._summaryBoxPointerItem.prepareNotificationStackForShowing();
} else if (this._clickedSummaryItemMouseButton == 3) { } else if (this._clickedSummaryItemMouseButton == 3) {
this._summaryBoxPointer.bin.child = this._clickedSummaryItem.rightClickMenu; this._summaryBoxPointer.bin.child = this._clickedSummaryItem.rightClickMenu;

View File

@ -186,7 +186,7 @@ const NotificationsBox = new Lang.Class({
if (obj.resident) { if (obj.resident) {
this._residentNotificationBox.add(item.notificationStackWidget); this._residentNotificationBox.add(item.notificationStackWidget);
item.closeButtonVisible = false; item.closeButton.hide();
item.prepareNotificationStackForShowing(); item.prepareNotificationStackForShowing();
} else { } else {
[obj.sourceBox, obj.countLabel] = this._makeNotificationSource(item.source); [obj.sourceBox, obj.countLabel] = this._makeNotificationSource(item.source);
@ -244,7 +244,7 @@ const NotificationsBox = new Lang.Class({
obj.resident = true; obj.resident = true;
this._residentNotificationBox.add(obj.item.notificationStackWidget); this._residentNotificationBox.add(obj.item.notificationStackWidget);
obj.item.closeButtonVisible = false; obj.item.closeButton.hide();
obj.item.prepareNotificationStackForShowing(); obj.item.prepareNotificationStackForShowing();
} else { } else {
// just update the counter // just update the counter