diff --git a/src/components/appRouter.js b/src/components/appRouter.js index 7b36d01bdd..b08d46d82c 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -14,6 +14,9 @@ define(['loading', 'globalize', 'events', 'viewManager', 'layoutManager', 'skinM }, showSettings: function () { show('/settings/settings.html'); + }, + showNowPlaying: function () { + show("/nowplaying.html"); } }; diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index 406edbff5e..7d86dec42e 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -12,6 +12,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " html += ""; html += '
'; html += ''; + html += ''; html += ''; html += ''; html += ''; @@ -27,6 +28,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " headerHomeButton = skinHeader.querySelector(".headerHomeButton"); headerUserButton = skinHeader.querySelector(".headerUserButton"); headerCastButton = skinHeader.querySelector(".headerCastButton"); + headerAudioPlayerButton = skinHeader.querySelector(".headerAudioPlayerButton"); headerSearchButton = skinHeader.querySelector(".headerSearchButton"); lazyLoadViewMenuBarImages(); @@ -82,6 +84,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " if (!layoutManager.tv) { headerCastButton.classList.remove("hide"); } + } else { headerHomeButton.classList.add("hide"); headerCastButton.classList.add("hide"); @@ -116,6 +119,10 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " Dashboard.navigate("home.html"); } + function showAudioPlayer() { + return appRouter.showNowPlaying(); + } + function bindMenuEvents() { mainDrawerButton = document.querySelector(".mainDrawerButton"); @@ -140,9 +147,29 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " headerCastButton.addEventListener("click", onCastButtonClicked); } + headerAudioPlayerButton.addEventListener("click", showAudioPlayer); + if (layoutManager.mobile) { initHeadRoom(skinHeader); } + events.on(playbackManager, 'playbackstart', onPlaybackStart); + events.on(playbackManager, 'playbackstop', onPlaybackStop); + } + + function onPlaybackStart(e) { + + if (playbackManager.isPlayingAudio() && layoutManager.tv) { + headerAudioPlayerButton.classList.remove("hide"); + } else { + headerAudioPlayerButton.classList.add("hide"); + } + } + + function onPlaybackStop(e, stopInfo) { + + if (stopInfo.nextMediaType != 'Audio') { + headerAudioPlayerButton.classList.add("hide"); + } } function onCastButtonClicked() { @@ -763,6 +790,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " var currentUser; var headerCastButton; var headerSearchButton; + var headerAudioPlayerButton; var enableLibraryNavDrawer = !layoutManager.tv; var skinHeader = document.querySelector(".skinHeader"); var requiresUserRefresh = true; diff --git a/src/scripts/site.js b/src/scripts/site.js index 0cf65158d5..eb6a0ba566 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -989,10 +989,6 @@ var AppInfo = {}; Dashboard.navigate("mypreferencesmenu.html"); }; - appRouter.showNowPlaying = function () { - Dashboard.navigate("nowplaying.html"); - }; - appRouter.setTitle = function (title) { LibraryMenu.setTitle(title); };