From 2785c90ee53ec083a211e7d1916569ed9d88b4a6 Mon Sep 17 00:00:00 2001 From: Simon Bartlett Date: Tue, 23 Apr 2019 12:36:14 -0400 Subject: [PATCH] Fixed positioning issue in Popover See: https://github.com/mui-org/material-ui/issues/8040#issuecomment-357402125 --- src/Popover/Popover.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/Popover/Popover.js b/src/Popover/Popover.js index 5169ff20e98dc3..9d925a45a5cbb8 100644 --- a/src/Popover/Popover.js +++ b/src/Popover/Popover.js @@ -140,6 +140,14 @@ class Popover extends Component { componentDidMount() { this.placementTimeout = setTimeout(this.setPlacement); + + if (this.props.open) { + setTimeout(() => { + this.setState({ + setPlacement: true, + }) + }); + } } componentWillReceiveProps(nextProps) { @@ -154,6 +162,13 @@ class Popover extends Component { this.setState({ open: true, closing: false, + setPlacement: false, + }, () => { + setTimeout(() => { + this.setState({ + setPlacement: true, + }) + }) }); } else { if (nextProps.animated) { @@ -213,7 +228,10 @@ class Popover extends Component { ...other } = this.props; - let styleRoot = style; + let styleRoot = { + ...style, + opacity: this.state.setPlacement ? 1 : 0, + }; if (!animated) { styleRoot = {