summaryrefslogtreecommitdiffstats
path: root/webapp/components/channel_info_modal.jsx
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2016-11-04 11:21:14 -0400
committerHarrison Healey <harrisonmhealey@gmail.com>2016-11-04 11:21:14 -0400
commite6f7a47c99075a39d862308659b904bfaf64a11a (patch)
tree863f6eb80a2367fb080437d9e037fca283e3c270 /webapp/components/channel_info_modal.jsx
parentdbdd719c51d061dfc327644d4b2ca89a0595b4f1 (diff)
downloadchat-e6f7a47c99075a39d862308659b904bfaf64a11a.tar.gz
chat-e6f7a47c99075a39d862308659b904bfaf64a11a.tar.bz2
chat-e6f7a47c99075a39d862308659b904bfaf64a11a.zip
PLT-4507 Don't mount modals until opened to make resetting state automatic (#4358)
* Don't mount modals until opened to make resetting state automatic * Move dimiss handler to be fired after modal exit animation complete
Diffstat (limited to 'webapp/components/channel_info_modal.jsx')
-rw-r--r--webapp/components/channel_info_modal.jsx22
1 files changed, 11 insertions, 11 deletions
diff --git a/webapp/components/channel_info_modal.jsx b/webapp/components/channel_info_modal.jsx
index 7e0ff3873..fce4b75db 100644
--- a/webapp/components/channel_info_modal.jsx
+++ b/webapp/components/channel_info_modal.jsx
@@ -11,16 +11,16 @@ import * as TextFormatting from 'utils/text_formatting.jsx';
import React from 'react';
export default class ChannelInfoModal extends React.Component {
- shouldComponentUpdate(nextProps) {
- if (nextProps.show !== this.props.show) {
- return true;
- }
+ constructor(props) {
+ super(props);
- if (!Utils.areObjectsEqual(nextProps.channel, this.props.channel)) {
- return true;
- }
+ this.onHide = this.onHide.bind(this);
+
+ this.state = {show: true};
+ }
- return false;
+ onHide() {
+ this.setState({show: false});
}
render() {
@@ -83,8 +83,9 @@ export default class ChannelInfoModal extends React.Component {
return (
<Modal
dialogClassName='about-modal'
- show={this.props.show}
- onHide={this.props.onHide}
+ show={this.state.show}
+ onHide={this.onHide}
+ onExited={this.props.onHide}
>
<Modal.Header closeButton={true}>
<Modal.Title>
@@ -123,7 +124,6 @@ export default class ChannelInfoModal extends React.Component {
}
ChannelInfoModal.propTypes = {
- show: React.PropTypes.bool.isRequired,
onHide: React.PropTypes.func.isRequired,
channel: React.PropTypes.object.isRequired
};