import React, { Component } from 'react' import { Route } from 'react-router-dom' import { bindActionCreators } from 'redux' import { connect } from 'react-redux' import './viewer.fonts.css' import './viewer.css' import './viewer.nav.css' import './transcript/transcript.css' import actions from 'app/actions' import { Loader } from 'app/common' import ViewerNav from './nav/viewer.nav' import ViewerSections from './nav/viewer.sections' import ViewerRouter from './nav/viewer.router' import Player from './player/player.container' import Transcript from './transcript/transcript.container' import Checklist from './checklist/checklist.container' class ViewerContainer extends Component { constructor(props) { super(props) this.handleKeyDown = this.handleKeyDown.bind(this) } componentDidMount() { document.addEventListener('keydown', this.handleKeyDown) } componentWillUnmount() { 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 37: // left case 38: // up e.preventDefault() actions.audio.jump(-5.0) break case 39: // right case 40: // down e.preventDefault() actions.audio.jump(5.0) break } } render() { const { loaded, viewer } = this.props if (!loaded) { return