summaryrefslogtreecommitdiffstats
path: root/webapp/stores
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2017-05-10 07:41:12 -0400
committerGitHub <noreply@github.com>2017-05-10 07:41:12 -0400
commit9625362494888c9423bb6503b7e18557b6b9cc79 (patch)
tree976611e0ee7fff14dd13e044c571c370f5895392 /webapp/stores
parent6e642036f460fb2e28572d46ca29aa81fbc8c8d1 (diff)
downloadchat-9625362494888c9423bb6503b7e18557b6b9cc79.tar.gz
chat-9625362494888c9423bb6503b7e18557b6b9cc79.tar.bz2
chat-9625362494888c9423bb6503b7e18557b6b9cc79.zip
Fix DM getting marked unread from your own message (#6373)
Diffstat (limited to 'webapp/stores')
-rw-r--r--webapp/stores/channel_store.jsx21
1 files changed, 14 insertions, 7 deletions
diff --git a/webapp/stores/channel_store.jsx b/webapp/stores/channel_store.jsx
index db1bead46..58a7dfb78 100644
--- a/webapp/stores/channel_store.jsx
+++ b/webapp/stores/channel_store.jsx
@@ -20,6 +20,7 @@ const LAST_VIEVED_EVENT = 'last_viewed';
import store from 'stores/redux_store.jsx';
import * as Selectors from 'mattermost-redux/selectors/entities/channels';
import {ChannelTypes, UserTypes} from 'mattermost-redux/action_types';
+import {batchActions} from 'redux-batched-actions';
class ChannelStoreClass extends EventEmitter {
constructor(props) {
@@ -456,16 +457,22 @@ class ChannelStoreClass extends EventEmitter {
const channel = {...this.get(id)};
channel.total_msg_count++;
- store.dispatch({
- type: ChannelTypes.RECEIVED_CHANNEL,
- data: channel
- });
+ const actions = [];
if (markRead) {
- this.resetCounts([id]);
- } else {
- this.unreadCounts[id].msgs++;
+ actions.push({
+ type: ChannelTypes.RECEIVED_MY_CHANNEL_MEMBER,
+ data: {...member, msg_count: channel.total_msg_count}
+ });
}
+
+ actions.push(
+ {
+ type: ChannelTypes.RECEIVED_CHANNEL,
+ data: channel
+ }
+ );
+ store.dispatch(batchActions(actions));
}
incrementMentionsIfNeeded(id, msgProps) {