diff --git a/app/assets/javascripts/discourse/components/notifications-button.js.es6 b/app/assets/javascripts/discourse/components/notifications-button.js.es6 index 4270b30e483..2c54defb292 100644 --- a/app/assets/javascripts/discourse/components/notifications-button.js.es6 +++ b/app/assets/javascripts/discourse/components/notifications-button.js.es6 @@ -16,20 +16,24 @@ export default DropdownSelectBoxComponent.extend({ value: Em.computed.alias("notificationLevel"), - @computed("value") - icon(value) { - const details = buttonDetails(value); + @computed("selectedDetails") + icon(details) { return iconHTML(details.icon, {class: details.key}).htmlSafe(); }, - @computed("value", "showFullTitle") - generatedHeadertext(value, showFullTitle) { - if (showFullTitle) { - const details = buttonDetails(value); - return I18n.t(`${this.get("i18nPrefix")}.${details.key}.title`); - } else { - return null; - } + @computed("selectedDetails.key", "i18nPrefix") + selectedTitle(key, prefix) { + return I18n.t(`${prefix}.${key}.title`); + }, + + @computed("value") + selectedDetails(value) { + return buttonDetails(value); + }, + + @computed("selectedTitle", "showFullTitle") + generatedHeadertext(selectedTitle, showFullTitle) { + return showFullTitle ? selectedTitle : null; }, @computed diff --git a/app/assets/javascripts/discourse/components/select-box.js.es6 b/app/assets/javascripts/discourse/components/select-box.js.es6 index 8ac9dd350df..e3483750a02 100644 --- a/app/assets/javascripts/discourse/components/select-box.js.es6 +++ b/app/assets/javascripts/discourse/components/select-box.js.es6 @@ -308,6 +308,15 @@ export default Ember.Component.extend({ }); }, + @computed("headerText", "selectedContent", "textKey") + selectedTitle(headerText, selectedContent, textKey) { + if (Ember.isNone(selectedContent)) { + return headerText; + } + + return selectedContent[textKey]; + }, + @computed("headerText", "dynamicHeaderText", "selectedContent", "textKey", "clearSelectionLabel") generatedHeadertext(headerText, dynamic, selectedContent, textKey, clearSelectionLabel) { if (dynamic && !Ember.isNone(selectedContent)) { diff --git a/app/assets/javascripts/discourse/templates/components/dropdown-select-box/dropdown-header.hbs b/app/assets/javascripts/discourse/templates/components/dropdown-select-box/dropdown-header.hbs index d136e357e1c..be525a9fd71 100644 --- a/app/assets/javascripts/discourse/templates/components/dropdown-select-box/dropdown-header.hbs +++ b/app/assets/javascripts/discourse/templates/components/dropdown-select-box/dropdown-header.hbs @@ -1,8 +1,8 @@