From 6a6c5365d335666b5f76b92d1f41314e6873197f Mon Sep 17 00:00:00 2001
From: Joram Wilander <jwawilander@gmail.com>
Date: Wed, 3 May 2017 11:54:47 -0400
Subject: Fix DMs not being removed until re-render (#6305)

---
 webapp/components/sidebar.jsx | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

(limited to 'webapp/components/sidebar.jsx')

diff --git a/webapp/components/sidebar.jsx b/webapp/components/sidebar.jsx
index 7d3ab148e..b48d5a8f5 100644
--- a/webapp/components/sidebar.jsx
+++ b/webapp/components/sidebar.jsx
@@ -40,6 +40,9 @@ import {browserHistory, Link} from 'react-router/es6';
 import favicon from 'images/favicon/favicon-16x16.png';
 import redFavicon from 'images/favicon/redfavicon-16x16.png';
 
+import store from 'stores/redux_store.jsx';
+import * as Selectors from 'mattermost-redux/selectors/entities/preferences';
+
 export default class Sidebar extends React.Component {
     constructor(props) {
         super(props);
@@ -117,12 +120,14 @@ export default class Sidebar extends React.Component {
         const tutorialStep = PreferenceStore.getInt(Preferences.TUTORIAL_STEP, UserStore.getCurrentId(), 999);
 
         const channels = ChannelStore.getAll();
+        const preferences = Selectors.getMyPreferences(store.getState());
         let displayableChannels = {};
-        if (channels !== this.oldChannels) {
+        if (channels !== this.oldChannels || preferences !== this.oldPreferences) {
             const channelsArray = channels.map((channel) => Object.assign({}, channel));
             displayableChannels = ChannelUtils.buildDisplayableChannelList(channelsArray);
         }
         this.oldChannels = channels;
+        this.oldPreferences = preferences;
 
         return {
             activeId: currentChannelId,
-- 
cgit v1.2.3-1-g7c22

