FIX: Changing notification level in topic footer buttons was not updating timeline.

This commit is contained in:
Guo Xiang Tan
2017-04-12 14:54:03 +08:00
parent 7cb389a235
commit 5cb64810cd
5 changed files with 56 additions and 9 deletions

View File

@@ -9,12 +9,14 @@ export default MountWidget.extend({
},
@observes('topic.details.notification_level')
_triggerRerender() {
this.queueRerender();
_triggerEvent() {
this.appEvents.trigger('topic-notifications-button:changed', {
type: 'notification', id: this.get('topic.details.notification_level')
});
},
didInsertElement() {
this._super();
this.dispatch('topic-notifications-button:keyboard-trigger', 'topic-notifications-button');
this.dispatch('topic-notifications-button:changed', 'topic-notifications-button');
}
});

View File

@@ -79,6 +79,6 @@ export default MountWidget.extend(Docking, {
}
this.dispatch('topic:current-post-scrolled', 'timeline-scrollarea');
this.dispatch('topic-notifications-button:keyboard-trigger', 'topic-notifications-button');
this.dispatch('topic-notifications-button:changed', 'topic-notifications-button');
}
});

View File

@@ -196,19 +196,19 @@ export default {
},
setTrackingToMuted(event) {
this.appEvents.trigger('topic-notifications-button:keyboard-trigger', {type: 'notification', id: 0, event});
this.appEvents.trigger('topic-notifications-button:changed', {type: 'notification', id: 0, event});
},
setTrackingToRegular(event) {
this.appEvents.trigger('topic-notifications-button:keyboard-trigger', {type: 'notification', id: 1, event});
this.appEvents.trigger('topic-notifications-button:changed', {type: 'notification', id: 1, event});
},
setTrackingToTracking(event) {
this.appEvents.trigger('topic-notifications-button:keyboard-trigger', {type: 'notification', id: 2, event});
this.appEvents.trigger('topic-notifications-button:changed', {type: 'notification', id: 2, event});
},
setTrackingToWatching(event) {
this.appEvents.trigger('topic-notifications-button:keyboard-trigger', {type: 'notification', id: 3, event});
this.appEvents.trigger('topic-notifications-button:changed', {type: 'notification', id: 3, event});
},
sendToTopicListItemView(action) {

View File

@@ -88,7 +88,7 @@ export default createWidget('topic-notifications-button', {
return this.attrs.topic.get('details').updateNotifications(id);
},
topicNotificationsButtonKeyboardTrigger(msg) {
topicNotificationsButtonChanged(msg) {
switch(msg.type) {
case 'notification':
this.notificationLevelChanged(msg.id);