summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2016-12-02 12:25:50 -0500
committerChristopher Speller <crspeller@gmail.com>2016-12-02 12:25:50 -0500
commit67c60d236d357680d3893d19fde43b305243d6a2 (patch)
tree7b6def5026badd4a41b5cb1c98ecbe6e92efc755
parentea26c72dad3bc1a2ccb020310b635bd6484a1b15 (diff)
downloadchat-67c60d236d357680d3893d19fde43b305243d6a2.tar.gz
chat-67c60d236d357680d3893d19fde43b305243d6a2.tar.bz2
chat-67c60d236d357680d3893d19fde43b305243d6a2.zip
Fix preview collapsing in RHS root post (#4677)
-rw-r--r--webapp/components/rhs_root_post.jsx8
-rw-r--r--webapp/components/rhs_thread.jsx16
2 files changed, 21 insertions, 3 deletions
diff --git a/webapp/components/rhs_root_post.jsx b/webapp/components/rhs_root_post.jsx
index 4681f3fd3..1e6ed4ff5 100644
--- a/webapp/components/rhs_root_post.jsx
+++ b/webapp/components/rhs_root_post.jsx
@@ -59,6 +59,10 @@ export default class RhsRootPost extends React.Component {
return true;
}
+ if (nextProps.previewCollapsed !== this.props.previewCollapsed) {
+ return true;
+ }
+
if (!Utils.areObjectsEqual(nextProps.post, this.props.post)) {
return true;
}
@@ -388,6 +392,7 @@ export default class RhsRootPost extends React.Component {
<PostBodyAdditionalContent
post={post}
message={messageWrapper}
+ previewCollapsed={this.props.previewCollapsed}
/>
{fileAttachment}
<ReactionListContainer
@@ -413,5 +418,6 @@ RhsRootPost.propTypes = {
compactDisplay: React.PropTypes.bool,
useMilitaryTime: React.PropTypes.bool.isRequired,
isFlagged: React.PropTypes.bool,
- status: React.PropTypes.string
+ status: React.PropTypes.string,
+ previewCollapsed: React.PropTypes.string
};
diff --git a/webapp/components/rhs_thread.jsx b/webapp/components/rhs_thread.jsx
index a3266e9ba..0329d76b2 100644
--- a/webapp/components/rhs_thread.jsx
+++ b/webapp/components/rhs_thread.jsx
@@ -65,6 +65,7 @@ export default class RhsThread extends React.Component {
state.compactDisplay = PreferenceStore.get(Preferences.CATEGORY_DISPLAY_SETTINGS, Preferences.MESSAGE_DISPLAY, Preferences.MESSAGE_DISPLAY_DEFAULT) === Preferences.MESSAGE_DISPLAY_COMPACT;
state.flaggedPosts = PreferenceStore.getCategory(Constants.Preferences.CATEGORY_FLAGGED_POST);
state.statuses = Object.assign({}, UserStore.getStatuses());
+ state.previewsCollapsed = PreferenceStore.get(Preferences.CATEGORY_DISPLAY_SETTINGS, Preferences.COLLAPSE_DISPLAY, 'false');
this.state = state;
}
@@ -130,6 +131,10 @@ export default class RhsThread extends React.Component {
return true;
}
+ if (nextState.previewsCollapsed !== this.state.previewsCollapsed) {
+ return true;
+ }
+
if (!Utils.areObjectsEqual(nextState.flaggedPosts, this.state.flaggedPosts)) {
return true;
}
@@ -162,10 +167,16 @@ export default class RhsThread extends React.Component {
});
}
- onPreferenceChange() {
+ onPreferenceChange(category) {
+ let previewSuffix = '';
+ if (category === Preferences.CATEGORY_DISPLAY_SETTINGS) {
+ previewSuffix = '_' + Utils.generateId();
+ }
+
this.setState({
compactDisplay: PreferenceStore.get(Preferences.CATEGORY_DISPLAY_SETTINGS, Preferences.MESSAGE_DISPLAY, Preferences.MESSAGE_DISPLAY_DEFAULT) === Preferences.MESSAGE_DISPLAY_COMPACT,
- flaggedPosts: PreferenceStore.getCategory(Constants.Preferences.CATEGORY_FLAGGED_POST)
+ flaggedPosts: PreferenceStore.getCategory(Constants.Preferences.CATEGORY_FLAGGED_POST),
+ previewsCollapsed: PreferenceStore.get(Preferences.CATEGORY_DISPLAY_SETTINGS, Preferences.COLLAPSE_DISPLAY, 'false') + previewSuffix
});
this.forceUpdateInfo();
}
@@ -300,6 +311,7 @@ export default class RhsThread extends React.Component {
useMilitaryTime={this.props.useMilitaryTime}
isFlagged={isRootFlagged}
status={rootStatus}
+ previewCollapsed={this.state.previewsCollapsed}
/>
<div className='post-right-comments-container'>
{postsArray.map((comPost) => {