explore: redraw chart on width change too (#3067)

Fix #3028
This commit is contained in:
Riccardo Magliocchetti
2017-08-04 18:15:08 +02:00
committed by Maxime Beauchemin
parent 166c576c94
commit ae0655028f
2 changed files with 9 additions and 1 deletions

View File

@@ -32,6 +32,7 @@ const propTypes = {
column_formats: PropTypes.object,
containerId: PropTypes.string.isRequired,
height: PropTypes.string.isRequired,
width: PropTypes.string.isRequired,
isStarred: PropTypes.bool.isRequired,
slice: PropTypes.object,
table_name: PropTypes.string,
@@ -60,6 +61,7 @@ class ChartContainer extends React.PureComponent {
(
prevProps.queryResponse !== this.props.queryResponse ||
prevProps.height !== this.props.height ||
prevProps.width !== this.props.width ||
this.props.triggerRender
) && !this.props.queryResponse.error
&& this.props.chartStatus !== 'failed'

View File

@@ -28,6 +28,7 @@ class ExploreViewContainer extends React.Component {
super(props);
this.state = {
height: this.getHeight(),
width: this.getWidth(),
showModal: false,
};
}
@@ -72,6 +73,10 @@ class ExploreViewContainer extends React.Component {
this.props.actions.chartUpdateStopped(this.props.queryRequest);
}
getWidth() {
return `${window.innerWidth}px`;
}
getHeight() {
if (this.props.forcedHeight) {
return this.props.forcedHeight + 'px';
@@ -90,7 +95,7 @@ class ExploreViewContainer extends React.Component {
handleResize() {
clearTimeout(this.resizeTimer);
this.resizeTimer = setTimeout(() => {
this.setState({ height: this.getHeight() });
this.setState({ height: this.getHeight(), width: this.getWidth() });
}, 250);
}
@@ -128,6 +133,7 @@ class ExploreViewContainer extends React.Component {
return (
<ChartContainer
actions={this.props.actions}
width={this.state.width}
height={this.state.height}
/>);
}