mobile responsiveness, styling
This commit is contained in:
parent
cb70092b85
commit
3d710e18ad
8 changed files with 62 additions and 39 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
import Em from 'ember';
|
import Em from 'ember';
|
||||||
|
|
||||||
export default Em.Component.extend({
|
export default Em.Component.extend({
|
||||||
classNames: ['container'],
|
classNames: ['container-fluid'],
|
||||||
elementId: 'bridgeControls',
|
elementId: 'bridgeControls',
|
||||||
|
|
||||||
bridgeIp: null,
|
bridgeIp: null,
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ import Em from 'ember';
|
||||||
|
|
||||||
export default Em.Component.extend({
|
export default Em.Component.extend({
|
||||||
classNameBindings: ['groupControlDisplayed:on'],
|
classNameBindings: ['groupControlDisplayed:on'],
|
||||||
classNames: ['innerControlFrame'],
|
|
||||||
elementId: 'groupControls',
|
elementId: 'groupControls',
|
||||||
|
|
||||||
tagName: null,
|
tagName: null,
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import Em from 'ember';
|
import Em from 'ember';
|
||||||
|
|
||||||
export default Em.Component.extend({
|
export default Em.Component.extend({
|
||||||
classNames: ['innerControlFrame', 'col-sm-8', 'col-sm-offset-2', 'col-xs-12'],
|
classNames: ['col-lg-4', 'col-lg-offset-4', 'col-sm-6', 'col-sm-offset-3', 'col-xs-12'],
|
||||||
classNameBindings: ['active::hidden'],
|
classNameBindings: ['active::hidden'],
|
||||||
elementId: 'lightControl',
|
elementId: 'lightControl',
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import Em from 'ember';
|
||||||
import musicControlMixin from '../mixins/music-control';
|
import musicControlMixin from '../mixins/music-control';
|
||||||
|
|
||||||
export default Em.Component.extend(musicControlMixin, {
|
export default Em.Component.extend(musicControlMixin, {
|
||||||
classNames: ['innerControlFrame'],
|
classNames: ['col-lg-6', 'col-lg-offset-3', 'col-sm-10', 'col-sm-offset-1', 'col-xs-12'],
|
||||||
classNameBindings: ['active::hidden'],
|
classNameBindings: ['active::hidden'],
|
||||||
|
|
||||||
onActiveChange: function(){
|
onActiveChange: function(){
|
||||||
|
|
@ -37,10 +37,6 @@ export default Em.Component.extend(musicControlMixin, {
|
||||||
}
|
}
|
||||||
|
|
||||||
this.get('playQueue').removeAt(index);
|
this.get('playQueue').removeAt(index);
|
||||||
|
|
||||||
//if(index === this.get('playQueuePointer')){
|
|
||||||
// this.get('dancer')
|
|
||||||
//}
|
|
||||||
},
|
},
|
||||||
defaultControls: function(){
|
defaultControls: function(){
|
||||||
var beatOptions = this.get('beatOptions');
|
var beatOptions = this.get('beatOptions');
|
||||||
|
|
@ -117,6 +113,9 @@ export default Em.Component.extend(musicControlMixin, {
|
||||||
this.send('goToSong', nextSong);
|
this.send('goToSong', nextSong);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
toggleVisualizations: function() {
|
||||||
|
this.toggleProperty('visualizationsDisplayed');
|
||||||
|
},
|
||||||
fullscreen: function () {},
|
fullscreen: function () {},
|
||||||
seekChanged: function (position) {
|
seekChanged: function (position) {
|
||||||
var dancer = this.get('dancer');
|
var dancer = this.get('dancer');
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@ export default Em.Mixin.create({
|
||||||
frequency: {
|
frequency: {
|
||||||
range: {min: 0, max: 10},
|
range: {min: 0, max: 10},
|
||||||
step: 1,
|
step: 1,
|
||||||
defaultValue: [0,10],
|
defaultValue: [0,4],
|
||||||
pips: {
|
pips: {
|
||||||
mode: 'values',
|
mode: 'values',
|
||||||
values: [0,2,4,6,8,10],
|
values: [0,2,4,6,8,10],
|
||||||
|
|
@ -49,7 +49,7 @@ export default Em.Mixin.create({
|
||||||
|
|
||||||
threshold: 0.3,
|
threshold: 0.3,
|
||||||
decay: 0.02,
|
decay: 0.02,
|
||||||
frequency: [0,10],
|
frequency: [0,4],
|
||||||
|
|
||||||
playQueuePointer: -1,
|
playQueuePointer: -1,
|
||||||
playQueue: Em.A(),
|
playQueue: Em.A(),
|
||||||
|
|
@ -62,6 +62,7 @@ export default Em.Mixin.create({
|
||||||
dragging: false,
|
dragging: false,
|
||||||
draggingOverPlayListArea: false,
|
draggingOverPlayListArea: false,
|
||||||
dragLeaveTimeoutHandle: null,
|
dragLeaveTimeoutHandle: null,
|
||||||
|
visualizationsDisplayed: false,
|
||||||
|
|
||||||
playQueueEmpty: Em.computed.empty('playQueue'),
|
playQueueEmpty: Em.computed.empty('playQueue'),
|
||||||
playQueueNotEmpty: Em.computed.notEmpty('playQueue'),
|
playQueueNotEmpty: Em.computed.notEmpty('playQueue'),
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,10 @@ body {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#settings {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
.settingsItem {
|
.settingsItem {
|
||||||
margin-left: 15px;
|
margin-left: 15px;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
@ -137,7 +141,7 @@ md-progress-linear {
|
||||||
#appSettings {
|
#appSettings {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
background: white;
|
background: white;
|
||||||
box-shadow: 5px 10px 15px 5px rgba(0,0,0,.3);
|
box-shadow: 5px 10px 15px 5px rgba(0, 0, 0, .3);
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
right: 0;
|
right: 0;
|
||||||
|
|
@ -147,7 +151,6 @@ md-progress-linear {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
md-list {
|
md-list {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
@ -158,7 +161,6 @@ md-list-item .md-no-style {
|
||||||
|
|
||||||
#bridgeControls {
|
#bridgeControls {
|
||||||
position: relative;
|
position: relative;
|
||||||
max-width: 1000px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.navigation {
|
.navigation {
|
||||||
|
|
@ -205,12 +207,13 @@ md-list-item .md-no-style {
|
||||||
cursor: crosshair;
|
cursor: crosshair;
|
||||||
}
|
}
|
||||||
|
|
||||||
#loopAddition{
|
#loopAddition {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 18px;
|
left: 18px;
|
||||||
top: 13px;
|
top: 13px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
// LIGHT GROUP
|
// LIGHT GROUP
|
||||||
md-slider {
|
md-slider {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
@ -227,7 +230,7 @@ md-slider.md-default-theme .md-thumb:after {
|
||||||
|
|
||||||
#groupControls {
|
#groupControls {
|
||||||
display: none;
|
display: none;
|
||||||
box-shadow: 5px 10px 15px 5px rgba(0,0,0,.3);
|
box-shadow: 5px 10px 15px 5px rgba(0, 0, 0, .3);
|
||||||
border-radius: 0 0 5px 5px;
|
border-radius: 0 0 5px 5px;
|
||||||
width: 300px;
|
width: 300px;
|
||||||
top: 20px;
|
top: 20px;
|
||||||
|
|
@ -243,6 +246,7 @@ md-slider.md-default-theme .md-thumb:after {
|
||||||
#groupControls.on {
|
#groupControls.on {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
.lightGroup {
|
.lightGroup {
|
||||||
margin: 0 auto 0 auto;
|
margin: 0 auto 0 auto;
|
||||||
.tooltip.top {
|
.tooltip.top {
|
||||||
|
|
@ -398,7 +402,7 @@ md-switch.md-default-theme.md-checked .md-bar {
|
||||||
background-color: rgba(241, 43, 36, 0.5);
|
background-color: rgba(241, 43, 36, 0.5);
|
||||||
}
|
}
|
||||||
|
|
||||||
md-switch.md-default-theme.md-checked .md-thumb{
|
md-switch.md-default-theme.md-checked .md-thumb {
|
||||||
background-color: #F12B24;
|
background-color: #F12B24;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -588,13 +592,18 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.songArtist {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
#playListArea.dragHereHighlight {
|
#playListArea.dragHereHighlight {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 5px dotted #5383ff;
|
border: 5px dotted #5383ff;
|
||||||
}
|
}
|
||||||
|
|
||||||
#playListArea.draggingOver {
|
#playListArea.draggingOver {
|
||||||
background-color: darken(white, 5%);
|
background-color: darken(white, 5%);
|
||||||
box-shadow: inset 0 0 20px 0 rgba(0,0,0,1);
|
box-shadow: inset 0 0 20px 0 rgba(0, 0, 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
#fileInput {
|
#fileInput {
|
||||||
|
|
@ -604,9 +613,9 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
}
|
}
|
||||||
|
|
||||||
.playlistItem {
|
.playlistItem {
|
||||||
height: 45px;
|
min-height: 50px;
|
||||||
font-family: 'Open Sans', sans-serif;
|
font-family: 'Open Sans', sans-serif;
|
||||||
padding: 5px;
|
padding: 5px 20px 5px 5px;
|
||||||
position: relative;
|
position: relative;
|
||||||
color: darken(white, 20%);
|
color: darken(white, 20%);
|
||||||
.close {
|
.close {
|
||||||
|
|
@ -622,6 +631,7 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
|
|
||||||
.playlistItem:hover {
|
.playlistItem:hover {
|
||||||
background-color: lighten($playListBackgroundColor, 40%);
|
background-color: lighten($playListBackgroundColor, 40%);
|
||||||
|
color: white;
|
||||||
.close {
|
.close {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
@ -629,8 +639,6 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
|
|
||||||
#beatArea {
|
#beatArea {
|
||||||
position: relative;
|
position: relative;
|
||||||
float: none;
|
|
||||||
display: table-cell;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#beatArea * .noUi-target {
|
#beatArea * .noUi-target {
|
||||||
|
|
@ -642,7 +650,7 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
#beatArea * .noUi-vertical {
|
#beatArea * .noUi-vertical {
|
||||||
height: 170px;
|
height: 170px;
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
|
|
@ -659,26 +667,23 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
#playerBottom {
|
#playerBottom {
|
||||||
color: white;
|
color: white;
|
||||||
background-color: #5D5D5D;
|
background-color: #5D5D5D;
|
||||||
display: table;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#beatContainer {
|
#beatContainer {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
float: none;
|
|
||||||
display: table-cell;
|
|
||||||
md-switch {
|
md-switch {
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
z-index: 3;
|
z-index: 3;
|
||||||
|
margin-bottom: 2px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#beatContainer
|
|
||||||
|
|
||||||
#beatSpeaker {
|
#beatSpeaker {
|
||||||
position:relative;
|
position: relative;
|
||||||
padding: 0 5%;
|
padding: 0 5%;
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
@ -708,6 +713,7 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
transform: scale(1.1);
|
transform: scale(1.1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#beatArea .lightGroup {
|
#beatArea .lightGroup {
|
||||||
margin: 10px 20px 0 40px;
|
margin: 10px 20px 0 40px;
|
||||||
float: right;
|
float: right;
|
||||||
|
|
@ -731,6 +737,7 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
}
|
}
|
||||||
|
|
||||||
#beatHistory {
|
#beatHistory {
|
||||||
|
color: black;
|
||||||
height: 250px;
|
height: 250px;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
|
|
@ -740,3 +747,13 @@ md-switch.md-default-theme.md-checked .md-thumb{
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
box-shadow: 5px 10px 15px 5px rgba(0, 0, 0, 0.1);
|
box-shadow: 5px 10px 15px 5px rgba(0, 0, 0, 0.1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
#playerBottom {
|
||||||
|
display: table;
|
||||||
|
}
|
||||||
|
#beatArea, #beatContainer {
|
||||||
|
float: none;
|
||||||
|
display: table-cell;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
{{#if ready}}
|
{{#if ready}}
|
||||||
<div class="row navigation">
|
<div class="row navigation">
|
||||||
<div class="col-xs-6 col-xs-offset-3">
|
<div class="col-lg-4 col-lg-offset-4 col-xs-6 col-xs-offset-3">
|
||||||
{{#each tabData as |tab|}}
|
{{#each tabData as |tab|}}
|
||||||
<span class="navigationItem cursorPointer {{if tab.selected "active"}} text-uppercase" {{action "changeTab" tab.name}}>{{tab.name}}</span>
|
<span class="navigationItem cursorPointer {{if tab.selected "active"}} text-uppercase" {{action "changeTab" tab.name}}>{{tab.name}}</span>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-xs-3">
|
<div id="settings" class="col-lg-1 col-sm-2 col-xs-3">
|
||||||
<span id="groupMenu" class="settingsItem groupMenu {{if groupControlDisplayed 'on'}}">
|
<span id="groupMenu" class="settingsItem groupMenu {{if groupControlDisplayed 'on'}}">
|
||||||
<span class="bootstrapTooltip" data-toggle="tooltip" data-placement="bottom auto" data-title="Light Groups" {{action "toggleGroupControl"}}>{{paper-icon icon="group"}}</span>
|
<span class="bootstrapTooltip" data-toggle="tooltip" data-placement="bottom auto" data-title="Light Groups" {{action "toggleGroupControl"}}>{{paper-icon icon="group"}}</span>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,9 @@
|
||||||
<div id="playerTimeControls">{{timeElapsedTxt}} / {{timeTotalTxt}}</div>
|
<div id="playerTimeControls">{{timeElapsedTxt}} / {{timeTotalTxt}}</div>
|
||||||
|
|
||||||
<span class="pull-right">
|
<span class="pull-right">
|
||||||
|
<span data-toggle="tooltip" data-placement="top" class="bootstrapTooltip"
|
||||||
|
data-title="Visualizations" {{action "toggleVisualizations"}}>{{paper-icon icon="remove-red-eye" class="playerControllIcon"}}
|
||||||
|
</span>
|
||||||
<span data-toggle="tooltip" data-placement="top" class="bootstrapTooltip"
|
<span data-toggle="tooltip" data-placement="top" class="bootstrapTooltip"
|
||||||
data-title="Full screen" {{action "fullscreen"}}>{{paper-icon icon="fullscreen" class="playerControllIcon"}}
|
data-title="Full screen" {{action "fullscreen"}}>{{paper-icon icon="fullscreen" class="playerControllIcon"}}
|
||||||
</span>
|
</span>
|
||||||
|
|
@ -41,8 +44,14 @@
|
||||||
|
|
||||||
<div id="playListArea" class={{playListAreaClass}} {{action "playListAreaAddAudio"}} {{action "playListAreaDragOver" on="dragOver"}} {{action "playListAreaDragLeave" on="dragLeave"}} {{action "dropFiles" on="drop"}}>
|
<div id="playListArea" class={{playListAreaClass}} {{action "playListAreaAddAudio"}} {{action "playListAreaDragOver" on="dragOver"}} {{action "playListAreaDragLeave" on="dragLeave"}} {{action "dropFiles" on="drop"}}>
|
||||||
{{#if (or playQueueEmpty dragging)}}
|
{{#if (or playQueueEmpty dragging)}}
|
||||||
<div id="dragHere">Drag your music files here</div>
|
<div id="dragHere">
|
||||||
{{paper-icon icon="library-music"}}
|
{{#if dragging}}
|
||||||
|
Drag your music files here
|
||||||
|
{{else}}
|
||||||
|
Add your music files here
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
{{paper-icon icon="library-music"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#each playQueue as |item index|}}
|
{{#each playQueue as |item index|}}
|
||||||
|
|
@ -88,13 +97,11 @@
|
||||||
|
|
||||||
<div id="beatContainer" class="col-sm-4 col-xs-12">
|
<div id="beatContainer" class="col-sm-4 col-xs-12">
|
||||||
{{#if speakerViewed}}
|
{{#if speakerViewed}}
|
||||||
<div id="beatSpeakerContainer">
|
<div id="beatSpeaker">
|
||||||
<div id="beatSpeaker">
|
<img src="assets/images/speaker-outer.png" />
|
||||||
<img src="assets/images/speaker-outer.png" />
|
<div id="beatSpeakerCenter">
|
||||||
<div id="beatSpeakerCenter">
|
<img src="assets/images/speaker-inner.png" class="cursorPointer" {{action "clickSpeaker"}} />
|
||||||
<img src="assets/images/speaker-inner.png" class="cursorPointer" {{action "clickSpeaker"}} />
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{{else}}
|
{{else}}
|
||||||
<div id ="beatHistory">
|
<div id ="beatHistory">
|
||||||
|
|
|
||||||
Reference in a new issue