From 38532013fa7e9b152d3750d73c149ff727881342 Mon Sep 17 00:00:00 2001 From: nickago Date: Thu, 9 Jul 2015 10:44:23 -0700 Subject: Time change ping riding on the status interupt for timestamp update --- web/react/components/post_info.jsx | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'web') diff --git a/web/react/components/post_info.jsx b/web/react/components/post_info.jsx index cf01747f0..e06baee87 100644 --- a/web/react/components/post_info.jsx +++ b/web/react/components/post_info.jsx @@ -5,6 +5,15 @@ var UserStore = require('../stores/user_store.jsx'); var utils = require('../utils/utils.jsx'); module.exports = React.createClass({ + componentDidMount: function() { + UserStore.addStatusesChangeListener(this._onChange); + }, + componentWillUnmount: function() { + UserStore.removeStatusesChangeListener(this._onChange); + }, + _onChange: function() { + this.forceUpdate(); + }, getInitialState: function() { return { }; }, -- cgit v1.2.3-1-g7c22 From 702112dfb315462919d276a72be2936ad45d7ceb Mon Sep 17 00:00:00 2001 From: nickago Date: Thu, 9 Jul 2015 14:11:38 -0700 Subject: Placed event listeners on higher level components to avoid app dispatcher vomit --- web/react/components/post_info.jsx | 9 --------- web/react/components/post_list.jsx | 4 ++++ web/react/components/sidebar_right.jsx | 5 +++++ 3 files changed, 9 insertions(+), 9 deletions(-) (limited to 'web') diff --git a/web/react/components/post_info.jsx b/web/react/components/post_info.jsx index e06baee87..cf01747f0 100644 --- a/web/react/components/post_info.jsx +++ b/web/react/components/post_info.jsx @@ -5,15 +5,6 @@ var UserStore = require('../stores/user_store.jsx'); var utils = require('../utils/utils.jsx'); module.exports = React.createClass({ - componentDidMount: function() { - UserStore.addStatusesChangeListener(this._onChange); - }, - componentWillUnmount: function() { - UserStore.removeStatusesChangeListener(this._onChange); - }, - _onChange: function() { - this.forceUpdate(); - }, getInitialState: function() { return { }; }, diff --git a/web/react/components/post_list.jsx b/web/react/components/post_list.jsx index d6dc9ce30..2cccdff22 100644 --- a/web/react/components/post_list.jsx +++ b/web/react/components/post_list.jsx @@ -78,6 +78,7 @@ module.exports = React.createClass({ PostStore.addChangeListener(this._onChange); ChannelStore.addChangeListener(this._onChange); + UserStore.addStatusesChangeListener(this._onChange); SocketStore.addChangeListener(this._onSocketChange); $(".post-list-holder-by-time").perfectScrollbar(); @@ -157,6 +158,7 @@ module.exports = React.createClass({ componentWillUnmount: function() { PostStore.removeChangeListener(this._onChange); ChannelStore.removeChangeListener(this._onChange); + UserStore.removeStatusesChangeListener(this._onChange); SocketStore.removeChangeListener(this._onSocketChange); $('body').off('click.userpopover'); }, @@ -193,6 +195,8 @@ module.exports = React.createClass({ this.scrolledToNew = false; } this.setState(newState); + } else { + this.forceUpdate() } }, _onSocketChange: function(msg) { diff --git a/web/react/components/sidebar_right.jsx b/web/react/components/sidebar_right.jsx index 8334b345b..baffa0ab7 100644 --- a/web/react/components/sidebar_right.jsx +++ b/web/react/components/sidebar_right.jsx @@ -16,10 +16,15 @@ module.exports = React.createClass({ componentDidMount: function() { PostStore.addSearchChangeListener(this._onSearchChange); PostStore.addSelectedPostChangeListener(this._onSelectedChange); + UserStore.addStatusesChangeListener(this._onChange); }, componentWillUnmount: function() { PostStore.removeSearchChangeListener(this._onSearchChange); PostStore.removeSelectedPostChangeListener(this._onSelectedChange); + UserStore.removeStatusesChangeListener(this._onChange); + }, + _onChange: function() { + this.forceUpdate(); }, _onSelectedChange: function(from_search) { if (this.isMounted()) { -- cgit v1.2.3-1-g7c22 From fe6f9437ab141b3a433eed66faee60c1d8924a0d Mon Sep 17 00:00:00 2001 From: nickago Date: Thu, 9 Jul 2015 14:55:29 -0700 Subject: Added comments for the force update functions --- web/react/components/post_list.jsx | 1 + web/react/components/sidebar_right.jsx | 1 + 2 files changed, 2 insertions(+) (limited to 'web') diff --git a/web/react/components/post_list.jsx b/web/react/components/post_list.jsx index 2cccdff22..177e4a1db 100644 --- a/web/react/components/post_list.jsx +++ b/web/react/components/post_list.jsx @@ -196,6 +196,7 @@ module.exports = React.createClass({ } this.setState(newState); } else { + // Updates the timestamp on each post this.forceUpdate() } }, diff --git a/web/react/components/sidebar_right.jsx b/web/react/components/sidebar_right.jsx index baffa0ab7..60c8ffae6 100644 --- a/web/react/components/sidebar_right.jsx +++ b/web/react/components/sidebar_right.jsx @@ -24,6 +24,7 @@ module.exports = React.createClass({ UserStore.removeStatusesChangeListener(this._onChange); }, _onChange: function() { + // Updates the timestamp on each post this.forceUpdate(); }, _onSelectedChange: function(from_search) { -- cgit v1.2.3-1-g7c22