diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2021-03-20 18:03:31 +0100 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2021-03-20 18:03:31 +0100 |
| commit | d9ee2c97882ea5ace9c28ac6560ffa240daf9345 (patch) | |
| tree | d4d2464597d50f245a3240d8d26f451eeb89e4f0 /frontend/app/views/tile/handles/tile.video.js | |
| parent | d621365d3632b294c2c47f424786415c01c4cdf5 (diff) | |
toggle side of sidebar. popup form. wait to appear form.
Diffstat (limited to 'frontend/app/views/tile/handles/tile.video.js')
| -rw-r--r-- | frontend/app/views/tile/handles/tile.video.js | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/frontend/app/views/tile/handles/tile.video.js b/frontend/app/views/tile/handles/tile.video.js index 001cce2..a9f0d09 100644 --- a/frontend/app/views/tile/handles/tile.video.js +++ b/frontend/app/views/tile/handles/tile.video.js @@ -11,12 +11,25 @@ export default class TileVideo extends Component { this.handleEnded = this.handleEnded.bind(this) } componentDidMount() { - this.videoRef.current.addEventListener('ended', this.handleEnded) - this.videoRef.current.addEventListener('timeupdate', this.handleTimeUpdate) + this.bind() + } + componentDidUpdate() { + this.unbind() + this.bind() } componentWillUnmount() { - this.videoRef.current.removeEventListener('timeupdate', this.handleTimeUpdate) - this.videoRef.current.removeEventListener('ended', this.handleEnded) + this.unbind() + } + bind() { + if (!this.videoRef.current) return + this.el = this.videoRef.current + this.el.addEventListener('ended', this.handleEnded) + this.el.addEventListener('timeupdate', this.handleTimeUpdate) + } + unbind() { + if (!this.el) return + this.el.removeEventListener('timeupdate', this.handleTimeUpdate) + this.el.removeEventListener('ended', this.handleEnded) } handleTimeUpdate() { if (this.props.tile.settings.loop && this.props.tile.settings.loop_section) { @@ -63,7 +76,7 @@ export default class TileVideo extends Component { autoPlay={true} controls={false} loop={tile.settings.loop} - muted={tile.settings.muted} + muted={viewing ? tile.settings.muted : true} style={generateVideoStyle(tile, bounds)} /> </div> |
