* wip
This commit is contained in:
parent
15f9c6196a
commit
f520b889e5
|
|
@ -112,10 +112,14 @@
|
||||||
$voiceChatTabSelector.click(function () {
|
$voiceChatTabSelector.click(function () {
|
||||||
// validate audio settings
|
// validate audio settings
|
||||||
if (validateAudioSettings()) {
|
if (validateAudioSettings()) {
|
||||||
|
logger.debug("initializing voice chat helper")
|
||||||
configureTracksHelper.reset();
|
configureTracksHelper.reset();
|
||||||
voiceChatHelper.reset();
|
voiceChatHelper.reset();
|
||||||
showVoiceChatPanel();
|
showVoiceChatPanel();
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
logger.debug("invalid audio settings; ignoring")
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$btnCancel.click(function() {
|
$btnCancel.click(function() {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
(function(context,$) {
|
(function(context,$) {
|
||||||
|
|
||||||
context.JK = context.JK || {};
|
context.JK = context.JK || {};
|
||||||
context.JK.SessionSettingsDialog = function(app, sessionScreen) {
|
context.JK.SessionSettingsDialog = function(app) {
|
||||||
var logger = context.JK.logger;
|
var logger = context.JK.logger;
|
||||||
var gearUtils = context.JK.GearUtilsInstance;
|
var gearUtils = context.JK.GearUtilsInstance;
|
||||||
var $dialog;
|
var $dialog;
|
||||||
|
|
|
||||||
|
|
@ -334,6 +334,25 @@
|
||||||
"MetronomeGroup": 16
|
"MetronomeGroup": 16
|
||||||
};
|
};
|
||||||
|
|
||||||
|
context.JK.ChannelGroupLookup = {
|
||||||
|
0: "MasterGroup",
|
||||||
|
1: "MonitorGroup",
|
||||||
|
2: "MasterCatGroup",
|
||||||
|
3: "MonitorCatGroup",
|
||||||
|
4: "AudioInputMusicGroup",
|
||||||
|
5: "AudioInputChatGroup",
|
||||||
|
6: "MediaTrackGroup",
|
||||||
|
7: "StreamOutMusicGroup",
|
||||||
|
8: "StreamOutChatGroup",
|
||||||
|
9: "StreamOutMediaGroup",
|
||||||
|
10: "UserMusicInputGroup",
|
||||||
|
11: "UserChatInputGroup",
|
||||||
|
12: "UserMediaInputGroup",
|
||||||
|
13: "PeerAudioInputMusicGroup",
|
||||||
|
14: "PeerMediaTrackGroup",
|
||||||
|
15: "JamTrackGroup",
|
||||||
|
16: "MetronomeGroup"
|
||||||
|
}
|
||||||
context.JK.CategoryGroupIds = {
|
context.JK.CategoryGroupIds = {
|
||||||
"AudioInputMusic" : "AudioInputMusic",
|
"AudioInputMusic" : "AudioInputMusic",
|
||||||
"AudioInputChat" : "AudioInputChat",
|
"AudioInputChat" : "AudioInputChat",
|
||||||
|
|
|
||||||
|
|
@ -53,10 +53,10 @@ MixerActions = @MixerActions
|
||||||
<div className="track-controls">
|
<div className="track-controls">
|
||||||
<SessionTrackVU orientation="horizontal" lightCount={4} lightWidth={17} lightHeight={3} side="best" mixers={mixers} />
|
<SessionTrackVU orientation="horizontal" lightCount={4} lightWidth={17} lightHeight={3} side="best" mixers={mixers} />
|
||||||
<div className="track-buttons">
|
<div className="track-buttons">
|
||||||
|
<div className="track-instrument"><img height="24" src={this.props.instrumentIcon} width="24" /></div>
|
||||||
<div className="track-icon-pan" style={panStyle}/>
|
<div className="track-icon-pan" style={panStyle}/>
|
||||||
<div className={classes} data-control="mute" data-mixer-id={muteMixerId} onClick={this.handleMute}/>
|
<div className={classes} data-control="mute" data-mixer-id={muteMixerId} onClick={this.handleMute}/>
|
||||||
</div>
|
</div>
|
||||||
<div className="track-instrument"><img height="24" src={this.props.instrumentIcon} width="24" /></div>
|
|
||||||
<br className="clearall"/>
|
<br className="clearall"/>
|
||||||
</div>
|
</div>
|
||||||
<br className="clearall"/>
|
<br className="clearall"/>
|
||||||
|
|
|
||||||
|
|
@ -53,10 +53,10 @@ MixerActions = @MixerActions
|
||||||
<div className="track-controls">
|
<div className="track-controls">
|
||||||
<SessionTrackVU orientation="horizontal" lightCount={4} lightWidth={17} lightHeight={3} side="best" mixers={mixers} />
|
<SessionTrackVU orientation="horizontal" lightCount={4} lightWidth={17} lightHeight={3} side="best" mixers={mixers} />
|
||||||
<div className="track-buttons">
|
<div className="track-buttons">
|
||||||
|
<div className="track-instrument"><img height="24" src={this.props.instrumentIcon} width="24" /></div>
|
||||||
<div className="track-icon-pan" style={panStyle}/>
|
<div className="track-icon-pan" style={panStyle}/>
|
||||||
<div className={classes} data-control="mute" data-mixer-id={muteMixerId} onClick={this.handleMute}/>
|
<div className={classes} data-control="mute" data-mixer-id={muteMixerId} onClick={this.handleMute}/>
|
||||||
</div>
|
</div>
|
||||||
<div className="track-instrument"><img height="24" src={this.props.instrumentIcon} width="24" /></div>
|
|
||||||
<br className="clearall"/>
|
<br className="clearall"/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,11 @@ MixerActions = @MixerActions
|
||||||
|
|
||||||
mixins: [Reflux.listenTo(@SessionMyTracksStore,"onInputsChanged")]
|
mixins: [Reflux.listenTo(@SessionMyTracksStore,"onInputsChanged")]
|
||||||
|
|
||||||
|
closeHover: (e) ->
|
||||||
|
e.preventDefault()
|
||||||
|
$container = $(this.getDOMNode()).closest('.react-holder')
|
||||||
|
$container.data('bt').btOff()
|
||||||
|
|
||||||
onInputsChanged: (sessionMixers) ->
|
onInputsChanged: (sessionMixers) ->
|
||||||
|
|
||||||
mixers = sessionMixers.mixers
|
mixers = sessionMixers.mixers
|
||||||
|
|
@ -115,6 +120,10 @@ MixerActions = @MixerActions
|
||||||
<p>This will not affect the volume for other musicians in the session.</p>
|
<p>This will not affect the volume for other musicians in the session.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className="close-window">
|
||||||
|
<a onClick={this.closeHover}>close</a>
|
||||||
|
</div>
|
||||||
</div>`
|
</div>`
|
||||||
|
|
||||||
componentDidMount: () ->
|
componentDidMount: () ->
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,11 @@ MixerActions = @MixerActions
|
||||||
|
|
||||||
mixins: [Reflux.listenTo(@SessionMyTracksStore, "onInputsChanged")]
|
mixins: [Reflux.listenTo(@SessionMyTracksStore, "onInputsChanged")]
|
||||||
|
|
||||||
|
closeHover: (e) ->
|
||||||
|
e.preventDefault()
|
||||||
|
$container = $(this.getDOMNode()).closest('.react-holder')
|
||||||
|
$container.data('bt').btOff()
|
||||||
|
|
||||||
onInputsChanged: (sessionMixers) ->
|
onInputsChanged: (sessionMixers) ->
|
||||||
mixers = sessionMixers.mixers
|
mixers = sessionMixers.mixers
|
||||||
newMixers = mixers.refreshMixer(@state.mixers)
|
newMixers = mixers.refreshMixer(@state.mixers)
|
||||||
|
|
@ -30,6 +35,9 @@ MixerActions = @MixerActions
|
||||||
<div className="session-pan">
|
<div className="session-pan">
|
||||||
<SessionTrackPan mixers={this.state.mixers} />
|
<SessionTrackPan mixers={this.state.mixers} />
|
||||||
</div>
|
</div>
|
||||||
|
<div className="close-window">
|
||||||
|
<a onClick={this.closeHover}>close</a>
|
||||||
|
</div>
|
||||||
</div>`
|
</div>`
|
||||||
|
|
||||||
componentWillUpdate: (nextProps, nextState) ->
|
componentWillUpdate: (nextProps, nextState) ->
|
||||||
|
|
|
||||||
|
|
@ -64,9 +64,9 @@ ptrCount = 0
|
||||||
$root = $(this.getDOMNode())
|
$root = $(this.getDOMNode())
|
||||||
|
|
||||||
if mixerChanged
|
if mixerChanged
|
||||||
logger.debug("re-registering VU")
|
logger.debug("re-registering VU #{context.JK.groupIdDisplay(mixer)}", mixer)
|
||||||
else
|
else
|
||||||
logger.debug("registered VU")
|
logger.debug("registered VU #{context.JK.groupIdDisplay(mixer)}", mixer)
|
||||||
|
|
||||||
context.JK.VuHelpers.registerVU(@props.side, mixer, @state.ptr, @props.orientation == 'horizontal', @props.lightCount, $root.find('td'))
|
context.JK.VuHelpers.registerVU(@props.side, mixer, @state.ptr, @props.orientation == 'horizontal', @props.lightCount, $root.find('td'))
|
||||||
|
|
||||||
|
|
@ -81,7 +81,7 @@ ptrCount = 0
|
||||||
|
|
||||||
componentWillUnmount: () ->
|
componentWillUnmount: () ->
|
||||||
if @state.registered?
|
if @state.registered?
|
||||||
logger.debug("unregistered VU")
|
logger.debug("unregistered VU #{context.JK.groupIdDisplay(@state.registered.mixer)}")
|
||||||
context.JK.VuHelpers.unregisterVU(@state.registered.mixer, @state.registered.ptr)
|
context.JK.VuHelpers.unregisterVU(@state.registered.mixer, @state.registered.ptr)
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
@ -5,9 +5,13 @@ ptrCount = 0
|
||||||
|
|
||||||
@SessionTrackVolumeHover = React.createClass({
|
@SessionTrackVolumeHover = React.createClass({
|
||||||
|
|
||||||
btElement: null
|
|
||||||
mixins: [Reflux.listenTo(@SessionMyTracksStore,"onInputsChanged")]
|
mixins: [Reflux.listenTo(@SessionMyTracksStore,"onInputsChanged")]
|
||||||
|
|
||||||
|
closeHover: (e) ->
|
||||||
|
e.preventDefault()
|
||||||
|
$container = $(this.getDOMNode()).closest('.react-holder')
|
||||||
|
$container.data('bt').btOff()
|
||||||
|
|
||||||
onInputsChanged: (sessionMixers) ->
|
onInputsChanged: (sessionMixers) ->
|
||||||
|
|
||||||
mixers = sessionMixers.mixers
|
mixers = sessionMixers.mixers
|
||||||
|
|
@ -75,6 +79,10 @@ ptrCount = 0
|
||||||
<p>This will not affect the volume of this track for other musicians in the session.</p>
|
<p>This will not affect the volume of this track for other musicians in the session.</p>
|
||||||
<p>To adjust master levels for all musicians for recordings and broadcasts, use Mixer button in the toolbar.</p>
|
<p>To adjust master levels for all musicians for recordings and broadcasts, use Mixer button in the toolbar.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className="close-window">
|
||||||
|
<a onClick={this.closeHover}>close</a>
|
||||||
|
</div>
|
||||||
</div>`
|
</div>`
|
||||||
|
|
||||||
componentDidMount: () ->
|
componentDidMount: () ->
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
context = window
|
context = window
|
||||||
|
|
||||||
|
logger = context.JK.logger
|
||||||
ChannelGroupIds = context.JK.ChannelGroupIds
|
ChannelGroupIds = context.JK.ChannelGroupIds
|
||||||
CategoryGroupIds = context.JK.CategoryGroupIds
|
CategoryGroupIds = context.JK.CategoryGroupIds
|
||||||
MIX_MODES = context.JK.MIX_MODES;
|
MIX_MODES = context.JK.MIX_MODES;
|
||||||
|
|
@ -20,6 +21,8 @@ MIX_MODES = context.JK.MIX_MODES;
|
||||||
ChannelGroupIds.MetronomeGroup]
|
ChannelGroupIds.MetronomeGroup]
|
||||||
@muteBothMasterAndPersonalGroups = [ChannelGroupIds.AudioInputMusicGroup, ChannelGroupIds.MediaTrackGroup,
|
@muteBothMasterAndPersonalGroups = [ChannelGroupIds.AudioInputMusicGroup, ChannelGroupIds.MediaTrackGroup,
|
||||||
ChannelGroupIds.JamTrackGroup, ChannelGroupIds.MetronomeGroup]
|
ChannelGroupIds.JamTrackGroup, ChannelGroupIds.MetronomeGroup]
|
||||||
|
@vuStats = {}
|
||||||
|
@shouldCollectVuStats = false
|
||||||
@organize()
|
@organize()
|
||||||
|
|
||||||
organize: () ->
|
organize: () ->
|
||||||
|
|
@ -745,10 +748,27 @@ MIX_MODES = context.JK.MIX_MODES;
|
||||||
@currentMixerRangeMax = mixer.range_high;
|
@currentMixerRangeMax = mixer.range_high;
|
||||||
mixer
|
mixer
|
||||||
|
|
||||||
|
collectStats: (mixer) ->
|
||||||
|
mixerStats = @vuStats[mixer.id]
|
||||||
|
|
||||||
|
unless mixerStats?
|
||||||
|
mixerStats = {count: 0, group_name: context.JK.groupIdDisplay(mixer)}
|
||||||
|
@vuStats[mixer.id] = mixerStats
|
||||||
|
|
||||||
|
mixerStats.count++
|
||||||
|
|
||||||
|
dumpVUStats: () ->
|
||||||
|
|
||||||
|
# to use: check MixerStore for setInterval in cstr
|
||||||
|
logger.debug("VU STAT DUMP")
|
||||||
|
for mixerId, mixerStat of @vuStats
|
||||||
|
logger.debug("VU STAT: #{mixerState.group_name} count=#{mixerStat.count}")
|
||||||
|
|
||||||
updateVU: (mixerId, mode, leftValue, leftClipping, rightValue, rightClipping) ->
|
updateVU: (mixerId, mode, leftValue, leftClipping, rightValue, rightClipping) ->
|
||||||
mixer = @getMixer(mixerId, mode)
|
mixer = @getMixer(mixerId, mode)
|
||||||
|
|
||||||
if mixer?
|
if mixer?
|
||||||
|
@collectStats(mixer) if @shouldCollectVuStats
|
||||||
context.JK.VuHelpers.updateVU3(mixer, leftValue, leftClipping, rightValue, rightClipping)
|
context.JK.VuHelpers.updateVU3(mixer, leftValue, leftClipping, rightValue, rightClipping)
|
||||||
|
|
||||||
###
|
###
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ context = window
|
||||||
|
|
||||||
|
|
||||||
else
|
else
|
||||||
logger.debug("SessionMyTracks: unable to find participant")
|
logger.warn("SessionMyTracks: unable to find participant")
|
||||||
|
|
||||||
this.setState(tracks: tracks, session:session, chat: chat)
|
this.setState(tracks: tracks, session:session, chat: chat)
|
||||||
}
|
}
|
||||||
|
|
@ -40,6 +40,10 @@ rest = context.JK.Rest()
|
||||||
context.JK.HandleBridgeCallback2 = @handleBridgeCallback
|
context.JK.HandleBridgeCallback2 = @handleBridgeCallback
|
||||||
context.JK.HandleBackingTrackSelectedCallback2 = @handleBackingTrackSelectedCallback
|
context.JK.HandleBackingTrackSelectedCallback2 = @handleBackingTrackSelectedCallback
|
||||||
|
|
||||||
|
#setInterval(@dumpVUStats, 5000)
|
||||||
|
|
||||||
|
dumpVUStats: () ->
|
||||||
|
@mixers.dumpVUStats() if @mixers?
|
||||||
|
|
||||||
issueChange: () ->
|
issueChange: () ->
|
||||||
@trigger({session: @session, mixers: @mixers})
|
@trigger({session: @session, mixers: @mixers})
|
||||||
|
|
|
||||||
|
|
@ -3265,6 +3265,7 @@
|
||||||
$metronomePlaybackSelect.metronomePlaybackMode().on(EVENTS.METRONOME_PLAYBACK_MODE_SELECTED, metronomePlaybackModeChanged)
|
$metronomePlaybackSelect.metronomePlaybackMode().on(EVENTS.METRONOME_PLAYBACK_MODE_SELECTED, metronomePlaybackModeChanged)
|
||||||
context.JK.helpBubble($metronomePlaybackHelp, 'metromone-playback-modes', {} , {offsetParent: $screen, width:'400px'});
|
context.JK.helpBubble($metronomePlaybackHelp, 'metromone-playback-modes', {} , {offsetParent: $screen, width:'400px'});
|
||||||
$(document).on('layout_resized', function() {
|
$(document).on('layout_resized', function() {
|
||||||
|
console.log("RESIZE FLUID")
|
||||||
resizeFluid();
|
resizeFluid();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -340,6 +340,15 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
context.JK.groupIdDisplay = function(mixer) {
|
||||||
|
if(mixer && mixer.group_id) {
|
||||||
|
return context.JK.ChannelGroupLookup[mixer.group_id]
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return "?group?"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
context.JK.bindProfileClickEvents = function($parent, dialogsToClose) {
|
context.JK.bindProfileClickEvents = function($parent, dialogsToClose) {
|
||||||
if (!$parent) {
|
if (!$parent) {
|
||||||
$parent = $('body');
|
$parent = $('body');
|
||||||
|
|
|
||||||
|
|
@ -336,14 +336,15 @@
|
||||||
|
|
||||||
// renders volumes based on what the backend says
|
// renders volumes based on what the backend says
|
||||||
function renderVolumes() {
|
function renderVolumes() {
|
||||||
var $fader = $voiceChatFader.find('[control="fader"]');
|
var $fader = $voiceChatFader.find('[data-control="fader"]');
|
||||||
var db = context.jamClient.FTUEGetChatInputVolume();
|
var db = context.jamClient.FTUEGetChatInputVolume();
|
||||||
var faderPct = db + 80;
|
var faderPct = db + 80;
|
||||||
|
console.log("SET HANDLE POSITION", $fader, db)
|
||||||
context.JK.FaderHelpers.setHandlePosition($fader, faderPct);
|
context.JK.FaderHelpers.setHandlePosition($fader, faderPct);
|
||||||
}
|
}
|
||||||
|
|
||||||
function renderNoVolume() {
|
function renderNoVolume() {
|
||||||
var $fader = $voiceChatFader.find('[control="fader"]');
|
var $fader = $voiceChatFader.find('[data-control="fader"]');
|
||||||
context.JK.FaderHelpers.setHandlePosition($fader, 50);
|
context.JK.FaderHelpers.setHandlePosition($fader, 50);
|
||||||
context.JK.VuHelpers.updateVU($voiceChatVuLeft, 0);
|
context.JK.VuHelpers.updateVU($voiceChatVuLeft, 0);
|
||||||
context.JK.VuHelpers.updateVU($voiceChatVuRight, 0);
|
context.JK.VuHelpers.updateVU($voiceChatVuRight, 0);
|
||||||
|
|
@ -384,7 +385,7 @@
|
||||||
renderVolumes();
|
renderVolumes();
|
||||||
|
|
||||||
uniqueCallbackName = 'voiceChatHelperChatInputVUCallback' + caller;
|
uniqueCallbackName = 'voiceChatHelperChatInputVUCallback' + caller;
|
||||||
context.JK[uniqueCallbackName] = function(dbValue) {
|
context.JK[uniqueCallbackName] = function(dbValue, leftClip, rightClip) {
|
||||||
context.JK.ftueVUCallback(dbValue, $voiceChatVuLeft);
|
context.JK.ftueVUCallback(dbValue, $voiceChatVuLeft);
|
||||||
context.JK.ftueVUCallback(dbValue, $voiceChatVuRight);
|
context.JK.ftueVUCallback(dbValue, $voiceChatVuRight);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -217,13 +217,13 @@
|
||||||
function renderVolumes() {
|
function renderVolumes() {
|
||||||
|
|
||||||
// input
|
// input
|
||||||
var $inputFader = $audioInputFader.find('[control="fader"]');
|
var $inputFader = $audioInputFader.find('[data-control="fader"]');
|
||||||
var db = context.jamClient.FTUEGetInputVolume();
|
var db = context.jamClient.FTUEGetInputVolume();
|
||||||
var faderPct = db + 80;
|
var faderPct = db + 80;
|
||||||
context.JK.FaderHelpers.setHandlePosition($inputFader, faderPct);
|
context.JK.FaderHelpers.setHandlePosition($inputFader, faderPct);
|
||||||
|
|
||||||
// output
|
// output
|
||||||
var $outputFader = $audioOutputFader.find('[control="fader"]');
|
var $outputFader = $audioOutputFader.find('[data-control="fader"]');
|
||||||
var db = context.jamClient.FTUEGetOutputVolume();
|
var db = context.jamClient.FTUEGetOutputVolume();
|
||||||
var faderPct = db + 80;
|
var faderPct = db + 80;
|
||||||
context.JK.FaderHelpers.setHandlePosition($outputFader, faderPct);
|
context.JK.FaderHelpers.setHandlePosition($outputFader, faderPct);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
@import 'client/common';
|
@import 'client/common';
|
||||||
|
|
||||||
$session-screen-divider: 1415px;
|
$session-screen-divider: 1190px;
|
||||||
@mixin session-small {
|
@mixin session-small {
|
||||||
@media (max-width: #{$session-screen-divider - 1px}) {
|
@media (max-width: #{$session-screen-divider - 1px}) {
|
||||||
@content;
|
@content;
|
||||||
|
|
@ -14,25 +14,43 @@ $session-screen-divider: 1415px;
|
||||||
|
|
||||||
#session-screen2 {
|
#session-screen2 {
|
||||||
|
|
||||||
|
.session-container {
|
||||||
|
overflow-x: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
.session-track {
|
.session-track {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
max-width: 120px;
|
max-width: 120px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.jam-track {
|
&.metronome, &.jam-track, &.recorded-track, &.backing-track {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
height:auto;
|
height:auto;
|
||||||
}
|
}
|
||||||
.track-controls {
|
.track-icon-pan {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
margin-top:0;
|
margin-right:0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.track-buttons {
|
||||||
|
@include session-small {
|
||||||
|
margin:12px 0 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
table.vu {
|
table.vu {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
margin-top:5px;
|
margin-top:5px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.track-controls {
|
||||||
|
@include session-small {
|
||||||
|
margin-right:8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.track-icon-pan {
|
.track-icon-pan {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
margin-right:2px;
|
margin-right:2px;
|
||||||
|
|
@ -40,21 +58,11 @@ $session-screen-divider: 1415px;
|
||||||
}
|
}
|
||||||
.track-instrument {
|
.track-instrument {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
margin: 8px 0 0 6px;
|
margin: -4px 12px 0 0;
|
||||||
}
|
|
||||||
}
|
|
||||||
.track-buttons {
|
|
||||||
@include session-small {
|
|
||||||
margin-top:12px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.track-controls {
|
|
||||||
@include session-small {
|
|
||||||
margin-right:8px;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&.jam-track-category {
|
&.jam-track-category, &.recorded-category {
|
||||||
.track-controls {
|
.track-controls {
|
||||||
@include session-small {
|
@include session-small {
|
||||||
margin-top:5px;
|
margin-top:5px;
|
||||||
|
|
@ -111,22 +119,26 @@ $session-screen-divider: 1415px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.session-my-tracks, .session-other-tracks, .session-media-tracks, .session-notifications {
|
.session-my-tracks, .session-other-tracks, .session-media-tracks {
|
||||||
@include border_box_sizing;
|
@include border_box_sizing;
|
||||||
float: left;
|
float: left;
|
||||||
width: 25%;
|
width: 33%;
|
||||||
border-right: 1px solid #4c4c4c;
|
border-right: 1px solid #4c4c4c;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
color:$ColorTextTypical;
|
color:$ColorTextTypical;
|
||||||
overflow:hidden;
|
overflow:hidden;
|
||||||
|
|
||||||
position:relative;
|
position:relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.session-media-tracks {
|
||||||
|
width:34%;
|
||||||
|
}
|
||||||
|
|
||||||
.session-notifications {
|
.session-notifications {
|
||||||
border-right-width: 0;
|
border-right-width: 0;
|
||||||
|
display:none; //temp
|
||||||
}
|
}
|
||||||
|
|
||||||
.in-session-controls {
|
.in-session-controls {
|
||||||
|
|
@ -155,6 +167,15 @@ $session-screen-divider: 1415px;
|
||||||
margin-right: 3px;
|
margin-right: 3px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.button-grey {
|
||||||
|
margin:0 5px;
|
||||||
|
padding: 3px 7px;
|
||||||
|
|
||||||
|
&.session-leave {
|
||||||
|
margin-right:10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.session-tracks-scroller {
|
.session-tracks-scroller {
|
||||||
|
|
@ -169,7 +190,7 @@ $session-screen-divider: 1415px;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
text-align:center;
|
text-align:left;
|
||||||
|
|
||||||
&.media-options-showing {
|
&.media-options-showing {
|
||||||
top:180px;
|
top:180px;
|
||||||
|
|
@ -325,6 +346,11 @@ $session-screen-divider: 1415px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.close-window {
|
||||||
|
text-align:center;
|
||||||
|
clear:both;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
@import "client/common";
|
@import "client/common";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.session-track {
|
.session-track {
|
||||||
|
|
||||||
display:inline-block;
|
display:inline-block;
|
||||||
|
|
@ -132,7 +130,7 @@
|
||||||
}
|
}
|
||||||
.track-icon-pan {
|
.track-icon-pan {
|
||||||
float:right;
|
float:right;
|
||||||
margin-right:20px;
|
margin-right:15px;
|
||||||
}
|
}
|
||||||
.track-icon-mute{
|
.track-icon-mute{
|
||||||
float:right;
|
float:right;
|
||||||
|
|
@ -143,8 +141,8 @@
|
||||||
.track-instrument {
|
.track-instrument {
|
||||||
float:left;
|
float:left;
|
||||||
margin-left:0;
|
margin-left:0;
|
||||||
margin-right: 8px;
|
margin-right: 10px;
|
||||||
margin-top: -3px;
|
margin-top: -4px;
|
||||||
}
|
}
|
||||||
.track-controls {
|
.track-controls {
|
||||||
margin-left:0;
|
margin-left:0;
|
||||||
|
|
@ -165,10 +163,9 @@
|
||||||
}
|
}
|
||||||
.track-instrument {
|
.track-instrument {
|
||||||
float: left;
|
float: left;
|
||||||
margin: -2px 7px 0 0;
|
margin: -4px 10px 0 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.recorded-category, &.jam-track-category {
|
&.recorded-category, &.jam-track-category {
|
||||||
height:auto !important;
|
height:auto !important;
|
||||||
}
|
}
|
||||||
|
|
@ -188,7 +185,7 @@
|
||||||
|
|
||||||
.react-holder {
|
.react-holder {
|
||||||
&.SessionTrackVolumeHover, &.SessionSelfVolumeHover {
|
&.SessionTrackVolumeHover, &.SessionSelfVolumeHover {
|
||||||
height:331px;
|
height:343px;
|
||||||
width:235px;
|
width:235px;
|
||||||
|
|
||||||
.session-track {
|
.session-track {
|
||||||
|
|
@ -304,6 +301,8 @@
|
||||||
|
|
||||||
.mixer-holder {
|
.mixer-holder {
|
||||||
|
|
||||||
|
padding-bottom:0;
|
||||||
|
|
||||||
.session-track {
|
.session-track {
|
||||||
margin-top:0;
|
margin-top:0;
|
||||||
}
|
}
|
||||||
|
|
@ -320,12 +319,14 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
&.SessionTrackVolumeHover {
|
&.SessionTrackVolumeHover {
|
||||||
|
.session-track {
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.SessionSelfVolumeHover {
|
&.SessionSelfVolumeHover {
|
||||||
width:470px ! important;
|
width:470px ! important;
|
||||||
height:360px ! important;
|
height:380px ! important;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.SessionTrackPanHover {
|
&.SessionTrackPanHover {
|
||||||
|
|
|
||||||
|
|
@ -300,12 +300,12 @@
|
||||||
var findBandScreen = new JK.FindBandScreen(JK.app);
|
var findBandScreen = new JK.FindBandScreen(JK.app);
|
||||||
findBandScreen.initialize();
|
findBandScreen.initialize();
|
||||||
|
|
||||||
var sessionScreen = new JK.SessionScreen(JK.app);
|
//var sessionScreen = new JK.SessionScreen(JK.app);
|
||||||
sessionScreen.initialize(localRecordingsDialog, recordingFinishedDialog, JK.FriendSelectorDialogInstance);
|
//sessionScreen.initialize(localRecordingsDialog, recordingFinishedDialog, JK.FriendSelectorDialogInstance);
|
||||||
|
|
||||||
AppActions.appInit.trigger(JK.app)
|
AppActions.appInit.trigger(JK.app)
|
||||||
|
|
||||||
var sessionSettingsDialog = new JK.SessionSettingsDialog(JK.app, sessionScreen);
|
var sessionSettingsDialog = new JK.SessionSettingsDialog(JK.app);
|
||||||
sessionSettingsDialog.initialize();
|
sessionSettingsDialog.initialize();
|
||||||
|
|
||||||
var adjustGearSpeed = new JK.AdjustGearSpeedDialog(JK.app);
|
var adjustGearSpeed = new JK.AdjustGearSpeedDialog(JK.app);
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
describe("with defaults", function() {
|
describe("with defaults", function() {
|
||||||
it("should add vertical fader to selector", function() {
|
it("should add vertical fader to selector", function() {
|
||||||
JK.FaderHelpers.renderFader('#fader', {faderId:'a'});
|
JK.FaderHelpers.renderFader('#fader', {faderId:'a'});
|
||||||
$fader = $('#fader div[control="fader"]');
|
$fader = $('#fader div[data-control="fader"]');
|
||||||
orientation = $fader.attr('orientation');
|
orientation = $fader.attr('orientation');
|
||||||
expect($fader.length).toEqual(1);
|
expect($fader.length).toEqual(1);
|
||||||
expect(orientation).toEqual('vertical');
|
expect(orientation).toEqual('vertical');
|
||||||
|
|
@ -23,7 +23,7 @@
|
||||||
describe("horizontal", function() {
|
describe("horizontal", function() {
|
||||||
it("should add horizontal fader to selector", function() {
|
it("should add horizontal fader to selector", function() {
|
||||||
JK.FaderHelpers.renderFader('#fader', {faderId:'a',faderType: "horizontal"});
|
JK.FaderHelpers.renderFader('#fader', {faderId:'a',faderType: "horizontal"});
|
||||||
$fader = $('#fader div[control="fader"]');
|
$fader = $('#fader div[data-control="fader"]');
|
||||||
orientation = $fader.attr('orientation');
|
orientation = $fader.attr('orientation');
|
||||||
expect($fader.length).toEqual(1);
|
expect($fader.length).toEqual(1);
|
||||||
expect(orientation).toEqual('horizontal');
|
expect(orientation).toEqual('horizontal');
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue