diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2020-11-05 14:31:16 +0100 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2020-11-05 14:31:16 +0100 |
| commit | b50b9ba9245d98a4552133db4e9d27de0f72fbe0 (patch) | |
| tree | 5564fedb725b79ce7f4ed38e103698dc9a8cbcdb /animism-align/frontend/app/views/viewer/nav/nav.parent.js | |
| parent | 1eb7c576ae5de6dca459d5ab382a67636636ffe6 (diff) | |
better nav
Diffstat (limited to 'animism-align/frontend/app/views/viewer/nav/nav.parent.js')
| -rw-r--r-- | animism-align/frontend/app/views/viewer/nav/nav.parent.js | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/animism-align/frontend/app/views/viewer/nav/nav.parent.js b/animism-align/frontend/app/views/viewer/nav/nav.parent.js index 98598d0..a4c2aee 100644 --- a/animism-align/frontend/app/views/viewer/nav/nav.parent.js +++ b/animism-align/frontend/app/views/viewer/nav/nav.parent.js @@ -19,6 +19,7 @@ class NavParent extends Component { this.handleMouseLeave = this.handleMouseLeave.bind(this) this.handleMouseEnterNext = this.handleMouseEnterNext.bind(this) this.handleMouseLeaveNext = this.handleMouseLeaveNext.bind(this) + this.handleNavBarClick = this.handleNavBarClick.bind(this) this.goToNextSection = this.goToNextSection.bind(this) } handleMouseEnter(){ @@ -34,11 +35,18 @@ class NavParent extends Component { } handleMouseLeaveNext(){ this.setState({ hoveringNext: false, suppressHover: true, }) - setTimeout(() => { + clearTimeout(this.timeout) + this.timeout = setTimeout(() => { this.setState({ suppressHover: false }) }, 50) } - goToNextSection() { + handleNavBarClick(e) { + e && e.stopPropagation() + actions.viewer.toggleComponent('nav') + } + goToNextSection(e) { + e && e.preventDefault() + e && e.stopPropagation() const { viewer } = this.props if (viewer.nextSection) { actions.viewer.seekToSection(viewer.nextSection) @@ -54,9 +62,9 @@ class NavParent extends Component { if ((this.state.hoveringNext || (viewer.atEndOfSection && !playing)) && !viewer.nav && viewer.nextSection) containerClassName += ' hovering-next' return ( <div className={containerClassName} onMouseLeave={this.handleMouseLeave}> - <div className={navClassName}> + <div className={navClassName} onClick={this.handleNavBarClick}> <div className='nav-section-name' onMouseEnter={this.handleMouseEnter}> - <span className="section-link link" onClick={() => actions.viewer.toggleComponent('nav')}> + <span className="section-link link"> <Arrow type={viewer.nav ? 'down' : 'up'} /> {viewer.currentSection && ( viewer.mediaTitle @@ -72,11 +80,13 @@ class NavParent extends Component { <div onMouseEnter={this.handleMouseEnter}> <NavPlayer /> </div> - <div className='nav-next'> + <div + className='nav-next' + onMouseEnter={this.handleMouseEnterNext} + onClick={this.goToNextSection} + > <span className="next-link link" - onMouseEnter={this.handleMouseEnterNext} - onClick={this.goToNextSection} > {viewer.nextSection ? "Next" |
