* VRFS-3576 - deal with case that mixdown is not yet created
This commit is contained in:
parent
284e671b01
commit
c379c6dc44
|
|
@ -19,9 +19,11 @@ MixerActions = reactContext.MixerActions
|
|||
MediaPlaybackStore = reactContext.MediaPlaybackStore
|
||||
SessionActions = reactContext.SessionActions
|
||||
MediaPlaybackActions = reactContext.MediaPlaybackActions
|
||||
JamTrackStore = reactContext.JamTrackStore
|
||||
|
||||
mixins.push(Reflux.listenTo(MixerStore,"onInputsChanged"))
|
||||
mixins.push(Reflux.listenTo(MediaPlaybackStore, 'onMediaStateChanged'))
|
||||
mixins.push(Reflux.listenTo(JamTrackStore, 'onJamTrackStateChanged'))
|
||||
|
||||
|
||||
@MediaControls = React.createClass({
|
||||
|
|
@ -29,6 +31,10 @@ mixins.push(Reflux.listenTo(MediaPlaybackStore, 'onMediaStateChanged'))
|
|||
mixins: mixins
|
||||
tempos : [ 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 63, 66, 69, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 126, 132, 138, 144, 152, 160, 168, 176, 184, 192, 200, 208 ]
|
||||
|
||||
onJamTrackStateChanged: (jamTrackState) ->
|
||||
@monitorControls(@state.controls, @state.mediaSummary, jamTrackState)
|
||||
@setState({jamTrackState: jamTrackState})
|
||||
|
||||
onMediaStateChanged: (changes) ->
|
||||
if changes.playbackStateChanged
|
||||
if @state.controls?
|
||||
|
|
@ -53,7 +59,7 @@ mixins.push(Reflux.listenTo(MediaPlaybackStore, 'onMediaStateChanged'))
|
|||
mediaSummary = mixers.mediaSummary
|
||||
metro = mixers.metro
|
||||
|
||||
@monitorControls(@state.controls, mediaSummary)
|
||||
@monitorControls(@state.controls, mediaSummary, @state.jamTrackState)
|
||||
@setState({mediaSummary: mediaSummary, metro: metro})
|
||||
|
||||
@updateMetronomeDetails(metro, @state.initializedMetronomeControls)
|
||||
|
|
@ -69,10 +75,10 @@ mixins.push(Reflux.listenTo(MediaPlaybackStore, 'onMediaStateChanged'))
|
|||
logger.debug("settingcricket", mode)
|
||||
$root.find('#metronome-playback-select').metronomeSetPlaybackMode(mode)
|
||||
|
||||
monitorControls: (controls, mediaSummary) ->
|
||||
monitorControls: (controls, mediaSummary, jamTrackState) ->
|
||||
|
||||
if mediaSummary.mediaOpen || mediaSummary.jamTrack?
|
||||
if mediaSummary.jamTrackOpen?
|
||||
if mediaSummary.mediaOpen || mediaSummary.jamTrack? || jamTrackState?.jamTrack?
|
||||
if mediaSummary.jamTrackOpen? || mediaSummary.jamTrack? || jamTrackState?.jamTrack?
|
||||
controls.startMonitor(PLAYBACK_MONITOR_MODE.JAMTRACK)
|
||||
else if mediaSummary.backingTrackOpen
|
||||
controls.startMonitor(PLAYBACK_MONITOR_MODE.MEDIA_FILE)
|
||||
|
|
@ -203,10 +209,11 @@ mixins.push(Reflux.listenTo(MediaPlaybackStore, 'onMediaStateChanged'))
|
|||
|
||||
mediaSummary = MixerStore.mixers.mediaSummary
|
||||
metro = MixerStore.mixers.metro
|
||||
jamTrackState = JamTrackStore.getState()
|
||||
|
||||
@monitorControls(controls, mediaSummary)
|
||||
@monitorControls(controls, mediaSummary, jamTrackState)
|
||||
|
||||
@tryPrepareMetronome(metro)
|
||||
|
||||
@setState({mediaSummary: mediaSummary, controls: controls, metro: metro})
|
||||
@setState({mediaSummary: mediaSummary, controls: controls, metro: metro, jamTrackState: jamTrackState})
|
||||
})
|
||||
|
|
@ -128,7 +128,10 @@ mixins.push(Reflux.listenTo(JamTrackStore, 'onJamTrackChanged'))
|
|||
customMixName = `<h5>{selectedMixdown.name}</h5>`
|
||||
disabled = false
|
||||
else
|
||||
customMixName = `<h5>Creating mixdown... <img src="/assets/shared/spinner.gif" /></h5>`
|
||||
if selectedMixdown.myPackage
|
||||
customMixName = `<h5>Creating mixdown... <img src="/assets/shared/spinner.gif" /></h5>`
|
||||
else
|
||||
customMixName = `<h5>{selectedMixdown.name}<img src="/assets/content/icon-mix-fail@2X.png" /></h5>`
|
||||
|
||||
else
|
||||
if SessionStore.downloadingJamTrack
|
||||
|
|
|
|||
|
|
@ -15,6 +15,8 @@ ChannelGroupIds = context.JK.ChannelGroupIds
|
|||
Reflux.listenTo(@JamTrackStore, "onJamTrackStateChanged")]
|
||||
|
||||
onJamTrackStateChanged: (jamTrackState) ->
|
||||
@setState({jamTrackState: jamTrackState})
|
||||
|
||||
if jamTrackState.fullTrackActivated || jamTrackState.opened && jamTrackState.jamTrack.activeMixdown == null
|
||||
@loadJamTrack(jamTrackState.jamTrack)
|
||||
else if jamTrackState.closed
|
||||
|
|
@ -29,6 +31,7 @@ ChannelGroupIds = context.JK.ChannelGroupIds
|
|||
|
||||
SessionActions.closeMedia(true)
|
||||
|
||||
|
||||
#inputsChangedProcessed: (state) ->
|
||||
|
||||
|
||||
|
|
@ -230,7 +233,7 @@ ChannelGroupIds = context.JK.ChannelGroupIds
|
|||
# give the users options to close it
|
||||
if this.state.mediaSummary.recordingOpen
|
||||
mediaType = "Recording"
|
||||
else if this.state.mediaSummary.jamTrackOpen
|
||||
else if this.state.mediaSummary.jamTrackOpen || @state.jamTrackState?.jamTrack?
|
||||
mediaType = "JamTrack"
|
||||
else if this.state.mediaSummary.backingTrackOpen
|
||||
mediaType = "Audio File"
|
||||
|
|
@ -308,7 +311,7 @@ ChannelGroupIds = context.JK.ChannelGroupIds
|
|||
|
||||
|
||||
getInitialState:() ->
|
||||
{mediaSummary:{mediaOpen: false}, isRecording: false, backingTracks: [], jamTracks: [], recordedTracks: [], metronome: null}
|
||||
{mediaSummary:{mediaOpen: false}, isRecording: false, backingTracks: [], jamTracks: [], recordedTracks: [], metronome: null, jamTrackState: {}}
|
||||
|
||||
onAppInit: (app) ->
|
||||
@app = app
|
||||
|
|
@ -343,7 +346,7 @@ ChannelGroupIds = context.JK.ChannelGroupIds
|
|||
@handlePopup()
|
||||
|
||||
handlePopup: () ->
|
||||
if @state.mediaSummary.userNeedsMediaControls
|
||||
if @state.mediaSummary.userNeedsMediaControls || @state.jamTrackState?.jamTrack?
|
||||
unless @childWindow?
|
||||
logger.debug("opening media control window")
|
||||
@childWindow = window.open("/popups/media-controls", 'Media Controls', 'scrollbars=yes,toolbar=no,status=no,height=155,width=350')
|
||||
|
|
|
|||
Loading…
Reference in New Issue