diff --git a/src/js/components/Player.js b/src/js/components/Player.js
index 6e2345aa..b375c5c9 100755
--- a/src/js/components/Player.js
+++ b/src/js/components/Player.js
@@ -16,13 +16,13 @@ class Player extends React.Component{
super(props);
}
- renderTrackInFocus(){
- if( this.props.mopidy && this.props.mopidy.currentTlTrack ){
+ renderTrack(){
+ if( this.props.mopidy && this.props.mopidy.current_tltrack ){
return (
{ this.props.spotify.track && !this.props.mini ?
: null }
-
{ this.props.mopidy.currentTlTrack.track.name }
-
+
{ this.props.mopidy.current_tltrack.track.name }
+
);
}
@@ -68,7 +68,7 @@ class Player extends React.Component{
return (
- { this.renderTrackInFocus() }
+ { this.renderTrack() }
{ this.renderPlayButton() }
diff --git a/src/js/components/TrackList.js b/src/js/components/TrackList.js
index 9b418d2c..3cbe7b7a 100755
--- a/src/js/components/TrackList.js
+++ b/src/js/components/TrackList.js
@@ -29,14 +29,16 @@ class TrackList extends React.Component{
}
handleKeyUp(e){
+ if( this.selectedTracks().length <= 0 ) return;
+
switch(e.keyCode){
case 13: // enter
- this.playTrack( this.state.tracks[this.state.lastSelectedTrack] );
+ this.playTracks();
break;
case 46: // delete
- console.log('delete')
+ this.removeTracks();
break;
}
}
@@ -81,9 +83,7 @@ class TrackList extends React.Component{
handleDoubleClick( e, index ){
if( this.props.ui.context_menu.show ) this.props.uiActions.hideContextMenu();
-
- var tracks = this.state.tracks;
- this.playTrack( tracks[index] )
+ this.playTracks()
}
handleContextMenu( e, index ){
@@ -104,10 +104,12 @@ class TrackList extends React.Component{
var tracks = this.selectedTracks();
+ // if we've got a specific action, run it
if( typeof(this.props.playTracks) !== 'undefined' ){
return this.props.playTracks( tracks );
}
+ // default to playing a bunch of uris
var uris = [];
for( var i = 0; i < tracks.length; i++ ){
uris.push( tracks[i].uri )
@@ -115,23 +117,16 @@ class TrackList extends React.Component{
return this.props.mopidyActions.playTracks( uris )
}
- playTrack( track ){
-
- if( typeof(this.props.playTrack) !== 'undefined' ){
- return this.props.playTrack( track );
- }
-
- var uris = [track.uri];
- this.props.mopidyActions.playTracks( uris )
- }
-
removeTracks(){
var tracks = this.selectedTracks();
+ // if we've got a specific action, run it
if( typeof(this.props.removeTracks) !== 'undefined' ){
return this.props.removeTracks( tracks );
}
+
+ // by default, do nothing
}
render(){
diff --git a/src/js/views/Queue.js b/src/js/views/Queue.js
index ceea9cce..2aeff525 100755
--- a/src/js/views/Queue.js
+++ b/src/js/views/Queue.js
@@ -11,7 +11,7 @@ import ArtistSentence from '../components/ArtistSentence'
import AlbumLink from '../components/AlbumLink'
import Header from '../components/Header'
-import * as actions from '../services/mopidy/actions'
+import * as mopidyActions from '../services/mopidy/actions'
class Queue extends React.Component{
@@ -39,7 +39,7 @@ class Queue extends React.Component{
context="queue"
tracks={this.props.mopidy.tracks}
removeTracks={ tracks => this.removeTracks( tracks ) }
- playTracks={ null }
+ playTracks={ tracks => this.playTracks( tracks ) }
playTrack={ track => this.playTrack( track ) }
/>
);
@@ -52,11 +52,15 @@ class Queue extends React.Component{
for( var i = 0; i < tracks.length; i++ ){
tlids.push( tracks[i].tlid )
}
- this.props.actions.removeTracks( tlids )
+ this.props.mopidyActions.removeTracks( tlids )
}
playTrack( track ){
- this.props.actions.changeTrack( track.tlid )
+ this.props.mopidyActions.changeTrack( track.tlid )
+ }
+
+ playTracks( tracks ){
+ this.props.mopidyActions.changeTrack( tracks[0].tlid )
}
render(){
@@ -86,7 +90,7 @@ const mapStateToProps = (state, ownProps) => {
const mapDispatchToProps = (dispatch) => {
return {
- actions: bindActionCreators(actions, dispatch)
+ mopidyActions: bindActionCreators(mopidyActions, dispatch)
}
}