* VRFS-3816 - tell user VST enable is coming in session

This commit is contained in:
Seth Call 2015-12-23 12:35:57 -06:00
parent 5ee54adc7c
commit def24616f3
5 changed files with 40 additions and 7 deletions

View File

@ -223,7 +223,12 @@
if (enableVstTimeout) {
clearTimeout(enableVstTimeout)
}
enableVstTimeout = setTimeout(function() { enableVst() }, 1000)
var isVstLoaded = context.jamClient.IsVstLoaded()
var hasVstAssignment = context.jamClient.hasVstAssignment()
if (hasVstAssignment && !isVstLoaded) {
enableVstTimeout = setTimeout(function() { enableVst() }, 1000)
}
}
function enableVst () {

View File

@ -17,6 +17,10 @@ ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
content = null
tracks = []
console.log("session?.preppingVstEnable", session?.preppingVstEnable)
if @state.session?.preppingVstEnable
delayVstEnable = `<div className="enable-vst-incoming">Enabling VSTs ... <div className="spinner-small"></div></div>`
if @state.tracks.length > 0
for track in @state.tracks
track.mode = MIX_MODES.PERSONAL
@ -38,6 +42,7 @@ ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
`<div className="session-my-tracks">
<h2>my live tracks</h2>
<SessionTrackSettingsBtn />
{delayVstEnable}
<div className="session-tracks-scroller">
{content}
<ReactCSSTransitionGroup transitionName="session-track-list" transitionAppear={true}>

View File

@ -2,12 +2,13 @@ context = window
@SessionHelper = class SessionHelper
constructor: (app, session, participantsEverSeen, isRecording, downloadingJamTrack) ->
constructor: (app, session, participantsEverSeen, isRecording, downloadingJamTrack, preppingVstEnable) ->
@app = app
@session = session
@participantsEverSeen = participantsEverSeen
@isRecording = isRecording
@downloadingJamTrack = downloadingJamTrack
@preppingVstEnable = preppingVstEnable
inSession: () ->
@session?

View File

@ -52,7 +52,7 @@ ConfigureTracksActions = @ConfigureTracksActions
@sessionUtils = context.JK.SessionUtils
@recordingModel = new context.JK.RecordingModel(@app, rest, context.jamClient);
RecordingActions.initModel(@recordingModel)
@helper = new context.SessionHelper(@app, @currentSession, @participantsEverSeen, @isRecording, @downloadingJamTrack)
@helper = new context.SessionHelper(@app, @currentSession, @participantsEverSeen, @isRecording, @downloadingJamTrack, @enableVstTimeout?)
onMixdownActive: (mixdown) ->
if @currentSession?.jam_track?
@ -63,7 +63,7 @@ ConfigureTracksActions = @ConfigureTracksActions
onVideoChanged: (@videoState) ->
issueChange: () ->
@helper = new context.SessionHelper(@app, @currentSession, @participantsEverSeen, @isRecording, @downloadingJamTrack)
@helper = new context.SessionHelper(@app, @currentSession, @participantsEverSeen, @isRecording, @downloadingJamTrack, @enableVstTimeout?)
this.trigger(@helper)
onWindowBackgrounded: () ->
@ -774,10 +774,16 @@ ConfigureTracksActions = @ConfigureTracksActions
delayEnableVst: () ->
if @enableVstTimeout?
clearTimeout(@enableVstTimeout)
@enableVstTimeout = null
@enableVstTimeout = setTimeout((() =>
@enableVst()
), 5000)
isVstLoaded = context.jamClient.IsVstLoaded()
hasVstAssignment = context.jamClient.hasVstAssignment()
if hasVstAssignment && !isVstLoaded
@enableVstTimeout = setTimeout((() =>
@enableVst()
), 5000)
@issueChange()
enableVst: () ->
@enableVstTimeout = null
@ -786,6 +792,7 @@ ConfigureTracksActions = @ConfigureTracksActions
ConfigureTracksActions.enableVst()
else
logger.debug("no longer in session; not enabling VSTs at this time")
@issueChange()
watchBackendStats: () ->
@backendStatsInterval = window.setInterval((() => (@updateBackendStats())), 1000)

View File

@ -464,4 +464,19 @@ $session-screen-divider: 1190px;
background-position: -14px 0;
}
}
.enable-vst-incoming {
position:absolute;
top:36px;
left:113px;
vertical-align: middle;
line-height: 32px;
height: 32px;
.spinner-small {
display: inline-block;
vertical-align: middle;
margin-top: -5px;
}
}
}