summaryrefslogtreecommitdiffstats
path: root/webapp
diff options
context:
space:
mode:
authorDavid Lu <david.lu97@outlook.com>2016-10-11 09:06:12 -0400
committerJoram Wilander <jwawilander@gmail.com>2016-10-11 09:06:12 -0400
commit78a4b19fd7094b3b00fad1ee47d89e6e4e3cdb99 (patch)
treef46499a14962fd588d79243c8cdb6cc568c0d90e /webapp
parentae79fabf4bc40aed4777dc847fbe2719df0bb508 (diff)
downloadchat-78a4b19fd7094b3b00fad1ee47d89e6e4e3cdb99.tar.gz
chat-78a4b19fd7094b3b00fad1ee47d89e6e4e3cdb99.tar.bz2
chat-78a4b19fd7094b3b00fad1ee47d89e6e4e3cdb99.zip
PLT-3785 Re-enabled marking messages unread (#4179)
* Re-added ALT+Click to mark msgs unread, fixed mentions for DM * Added string to /shortcuts
Diffstat (limited to 'webapp')
-rw-r--r--webapp/actions/post_actions.jsx7
-rw-r--r--webapp/components/post_view/components/post.jsx5
-rw-r--r--webapp/stores/channel_store.jsx3
3 files changed, 11 insertions, 4 deletions
diff --git a/webapp/actions/post_actions.jsx b/webapp/actions/post_actions.jsx
index 938770c50..63e3feec5 100644
--- a/webapp/actions/post_actions.jsx
+++ b/webapp/actions/post_actions.jsx
@@ -73,6 +73,7 @@ export function setUnreadPost(channelId, postId) {
let ownNewMessage = false;
const post = PostStore.getPost(channelId, postId);
const posts = PostStore.getVisiblePosts(channelId).posts;
+ const currentChannel = ChannelStore.getCurrent();
var currentUsedId = UserStore.getCurrentId();
if (currentUsedId === post.user_id || PostUtils.isSystemMessage(post)) {
for (const otherPostId in posts) {
@@ -103,6 +104,12 @@ export function setUnreadPost(channelId, postId) {
unreadPosts += 1;
}
}
+
+ // Temporary workaround for DM channels having wrong unread values
+ if (currentChannel.type === Constants.DM_CHANNEL) {
+ unreadPosts = 0;
+ }
+
const member = ChannelStore.getMember(channelId);
const channel = ChannelStore.get(channelId);
member.last_viewed_at = lastViewed;
diff --git a/webapp/components/post_view/components/post.jsx b/webapp/components/post_view/components/post.jsx
index e76701b6f..7eeffb039 100644
--- a/webapp/components/post_view/components/post.jsx
+++ b/webapp/components/post_view/components/post.jsx
@@ -4,6 +4,7 @@
import PostHeader from './post_header.jsx';
import PostBody from './post_body.jsx';
import ProfilePicture from 'components/profile_picture.jsx';
+import * as PostActions from 'actions/post_actions.jsx';
import Constants from 'utils/constants.jsx';
const ActionTypes = Constants.ActionTypes;
@@ -49,13 +50,11 @@ export default class Post extends React.Component {
this.refs.info.forceUpdate();
this.refs.header.forceUpdate();
}
- handlePostClick() {
- /* Disabled do to a bug: https://mattermost.atlassian.net/browse/PLT-3785
+ handlePostClick(e) {
if (e.altKey) {
e.preventDefault();
PostActions.setUnreadPost(this.props.post.channel_id, this.props.post.id);
}
- */
}
shouldComponentUpdate(nextProps, nextState) {
if (!Utils.areObjectsEqual(nextProps.post, this.props.post)) {
diff --git a/webapp/stores/channel_store.jsx b/webapp/stores/channel_store.jsx
index f1cd0bf82..ec5ce7758 100644
--- a/webapp/stores/channel_store.jsx
+++ b/webapp/stores/channel_store.jsx
@@ -328,8 +328,9 @@ class ChannelStoreClass extends EventEmitter {
let chMentionCount = chMember.mention_count;
let chUnreadCount = ch.total_msg_count - chMember.msg_count;
+ // Temporary workaround for DM channels having wrong unread values
if (ch.type === 'D') {
- chMentionCount = chUnreadCount;
+ chMentionCount = 0;
} else if (chMember.notify_props && chMember.notify_props.mark_unread === NotificationPrefs.MENTION) {
chUnreadCount = 0;
}