diff --git a/mopidy_musicbox_webclient/static/js/gui.js b/mopidy_musicbox_webclient/static/js/gui.js
index 26ec9bc2..a2ac39d8 100644
--- a/mopidy_musicbox_webclient/static/js/gui.js
+++ b/mopidy_musicbox_webclient/static/js/gui.js
@@ -16,9 +16,25 @@ function resetSong () {
data.track.artists = ''
data.track.length = 0
data.track.uri = ''
+ data.stream = ''
setSongInfo(data)
}
+function setSongTitle (data) {
+ var name = data.track.name
+ if (data.stream) {
+ name = data.stream + ' || ' + data.track.name
+ console.log('Setting name %s', name)
+ }
+ $('#modalname').html('' + name + '')
+ $('#infoname').html(name)
+}
+
+function setStreamTitle (title) {
+ songdata.stream = title
+ setSongTitle(songdata)
+}
+
function resizeMb () {
if ($(window).width() < 880) {
$('#panel').panel('close')
@@ -26,7 +42,7 @@ function resizeMb () {
$('#panel').panel('open')
}
- $('#infoname').html(songdata.track.name)
+ setSongTitle(songdata)
$('#infoartist').html(artiststext)
if ($(window).width() > 960) {
@@ -35,14 +51,6 @@ function resizeMb () {
}
}
-function setSongTitle (track, refresh_ui) {
- songdata.track.name = track.name
- $('#modalname').html('' + track.name + '')
- if (refresh_ui) {
- resizeMb()
- }
-}
-
function setSongInfo (data) {
if (!data) { return }
if (data.tlid === songdata.tlid) { return }
@@ -63,10 +71,7 @@ function setSongInfo (data) {
}
}
}
-
songdata = data
-
- setSongTitle(data.track, false)
songlength = Infinity
if (!data.track.length || data.track.length === 0) {
@@ -282,8 +287,9 @@ function initSocketevents () {
})
mopidy.on('event:streamTitleChanged', function (data) {
- // Update all track info.
- mopidy.playback.getCurrentTlTrack().then(processCurrenttrack, console.error)
+ // The stream title is separate from the current track.
+ setStreamTitle(data.title)
+ controls.setPlayState(true)
})
}
diff --git a/mopidy_musicbox_webclient/static/js/process_ws.js b/mopidy_musicbox_webclient/static/js/process_ws.js
index 00d8afe5..87f8ace2 100644
--- a/mopidy_musicbox_webclient/static/js/process_ws.js
+++ b/mopidy_musicbox_webclient/static/js/process_ws.js
@@ -6,10 +6,13 @@
*/
/** ******************************************************
- * process results of a (new) currently playing track
+ * process results of a (new) currently playing track and any stream title
*********************************************************/
function processCurrenttrack (data) {
setSongInfo(data)
+ mopidy.playback.getStreamTitle().then(function (title) {
+ setStreamTitle(title)
+ }, console.error)
}
/** ******************************************************