From cea7a5cde78189d43fdd4d43d6a5cb12cd29e1c5 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Thu, 14 Dec 2017 16:49:50 +0100 Subject: feat(Service): Add option to completely disable message badges --- src/models/Service.js | 1 + 1 file changed, 1 insertion(+) (limited to 'src/models/Service.js') diff --git a/src/models/Service.js b/src/models/Service.js index 958e4b11e..820cf4506 100644 --- a/src/models/Service.js +++ b/src/models/Service.js @@ -22,6 +22,7 @@ export default class Service { @observable team = ''; @observable customUrl = ''; @observable isNotificationEnabled = true; + @observable isBadgeEnabled = true; @observable isIndirectMessageBadgeEnabled = true; @observable customIconUrl = ''; @observable hasCrashed = false; -- cgit v1.2.3-70-g09d2 From f8bb2bedba18af4085865209805a2c5373ffb027 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Thu, 14 Dec 2017 17:09:21 +0100 Subject: Add missing commit --- src/components/services/tabs/TabItem.js | 2 +- src/models/Service.js | 3 +++ src/stores/ServicesStore.js | 8 ++++---- 3 files changed, 8 insertions(+), 5 deletions(-) (limited to 'src/models/Service.js') diff --git a/src/components/services/tabs/TabItem.js b/src/components/services/tabs/TabItem.js index 8403d9462..7aed8fda7 100644 --- a/src/components/services/tabs/TabItem.js +++ b/src/components/services/tabs/TabItem.js @@ -126,7 +126,7 @@ class TabItem extends Component { const menu = Menu.buildFromTemplate(menuTemplate); let notificationBadge = null; - if ((showMessageBadgeWhenMutedSetting || service.isNotificationEnabled) && showMessageBadgesEvenWhenMuted) { + if ((showMessageBadgeWhenMutedSetting || service.isNotificationEnabled) && showMessageBadgesEvenWhenMuted && service.isBadgeEnabled) { notificationBadge = ( {service.unreadDirectMessageCount > 0 && ( diff --git a/src/models/Service.js b/src/models/Service.js index 820cf4506..0b19440e7 100644 --- a/src/models/Service.js +++ b/src/models/Service.js @@ -53,6 +53,9 @@ export default class Service { this.isNotificationEnabled = data.isNotificationEnabled !== undefined ? data.isNotificationEnabled : this.isNotificationEnabled; + this.isBadgeEnabled = data.isBadgeEnabled !== undefined + ? data.isBadgeEnabled : this.isBadgeEnabled; + this.isIndirectMessageBadgeEnabled = data.isIndirectMessageBadgeEnabled !== undefined ? data.isIndirectMessageBadgeEnabled : this.isIndirectMessageBadgeEnabled; diff --git a/src/stores/ServicesStore.js b/src/stores/ServicesStore.js index b04aafd78..1cdf06041 100644 --- a/src/stores/ServicesStore.js +++ b/src/stores/ServicesStore.js @@ -491,13 +491,13 @@ export default class ServicesStore extends Store { const showMessageBadgeWhenMuted = this.stores.settings.all.showMessageBadgeWhenMuted; const showMessageBadgesEvenWhenMuted = this.stores.ui.showMessageBadgesEvenWhenMuted; - const unreadDirectMessageCount = this.enabled - .filter(s => (showMessageBadgeWhenMuted || s.isNotificationEnabled) && showMessageBadgesEvenWhenMuted) + const unreadDirectMessageCount = this.allDisplayed + .filter(s => (showMessageBadgeWhenMuted || s.isNotificationEnabled) && showMessageBadgesEvenWhenMuted && s.isBadgeEnabled) .map(s => s.unreadDirectMessageCount) .reduce((a, b) => a + b, 0); - const unreadIndirectMessageCount = this.enabled - .filter(s => (showMessageBadgeWhenMuted || s.isIndirectMessageBadgeEnabled) && showMessageBadgesEvenWhenMuted) + const unreadIndirectMessageCount = this.allDisplayed + .filter(s => (showMessageBadgeWhenMuted || s.isIndirectMessageBadgeEnabled) && showMessageBadgesEvenWhenMuted && s.isBadgeEnabled) .map(s => s.unreadIndirectMessageCount) .reduce((a, b) => a + b, 0); -- cgit v1.2.3-70-g09d2