diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2020-07-06 19:28:29 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2020-07-06 19:28:29 +0200 |
| commit | 07294becb5823b387e6b0ae8caae190a8b08551d (patch) | |
| tree | 6ba377768f56aac219425973c7a1e57af230e7ec /animism-align/frontend/views/paragraph/paragraph.container.js | |
| parent | 6f5ff3cdfac3fc154281fdda7c1ec9ff7ebbd1fa (diff) | |
highlight the current paragraph
Diffstat (limited to 'animism-align/frontend/views/paragraph/paragraph.container.js')
| -rw-r--r-- | animism-align/frontend/views/paragraph/paragraph.container.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/animism-align/frontend/views/paragraph/paragraph.container.js b/animism-align/frontend/views/paragraph/paragraph.container.js index ecd5417..13753a4 100644 --- a/animism-align/frontend/views/paragraph/paragraph.container.js +++ b/animism-align/frontend/views/paragraph/paragraph.container.js @@ -11,6 +11,36 @@ import { Loader } from '../../common' import ParagraphList from './containers/paragraphList.container' class ParagraphContainer extends Component { + componentDidMount() { + this.bind() + } + componentWillUnmount() { + this.unbind() + } + bind() { + document.addEventListener('keydown', this.handleKeydown) + } + unbind() { + document.removeEventListener('keydown', this.handleKeydown) + } + handleKeydown(e) { + if (document.activeElement !== document.body) { + return + } + // console.log(e.keyCode) + switch (e.keyCode) { + case 32: // spacebar + e.preventDefault() + actions.audio.toggle() + break + case 38: // up + actions.audio.jump(- ZOOM_STEPS[this.props.timeline.zoom] * 0.1) + break + case 40: // down + actions.audio.jump(ZOOM_STEPS[this.props.timeline.zoom] * 0.1) + break + } + } render() { if (!this.props.annotation.lookup || !this.props.paragraph.lookup) { return <div className='body loading'><Loader /></div> |
