diff options
Diffstat (limited to 'animism-align/frontend/app/views/audio')
| -rw-r--r-- | animism-align/frontend/app/views/audio/audio.actions.js | 2 | ||||
| -rw-r--r-- | animism-align/frontend/app/views/audio/audio.reducer.js | 7 |
2 files changed, 9 insertions, 0 deletions
diff --git a/animism-align/frontend/app/views/audio/audio.actions.js b/animism-align/frontend/app/views/audio/audio.actions.js index 86dd100..a156f9b 100644 --- a/animism-align/frontend/app/views/audio/audio.actions.js +++ b/animism-align/frontend/app/views/audio/audio.actions.js @@ -33,9 +33,11 @@ export const pause = () => dispatch => { } export const seek = play_ts => dispatch => { audioPlayer.currentTime = play_ts + dispatch({ type: types.audio.seek, seek_ts: audioPlayer.currentTime }) } export const jump = delta_ts => dispatch => { audioPlayer.currentTime += delta_ts + dispatch({ type: types.audio.seek, seek_ts: audioPlayer.currentTime }) } export const toggle = () => dispatch => { if (store.getState().audio.playing) { diff --git a/animism-align/frontend/app/views/audio/audio.reducer.js b/animism-align/frontend/app/views/audio/audio.reducer.js index c88d6f9..51bcacc 100644 --- a/animism-align/frontend/app/views/audio/audio.reducer.js +++ b/animism-align/frontend/app/views/audio/audio.reducer.js @@ -5,6 +5,7 @@ const initialState = { started: false, playing: false, play_ts: 0, + seek_ts: 0, volume: 1.0, } @@ -22,6 +23,12 @@ export default function alignReducer(state = initialState, action) { ...state, playing: false, } + case types.audio.seek: + return { + ...state, + play_ts: action.play_ts, + seek_ts: action.seek_ts, + } case types.audio.update_time: return { ...state, |
