1 line
1.3 KiB
JavaScript
1 line
1.3 KiB
JavaScript
|
|
import events from"./emby-apiclient/events.js";import playbackManager from"./common/playback/playbackmanager.js";import appRouter from"./approuter.js";let currentPlayer;function onPlaybackStart(e,state){onStateChanged.call(this,e,state)}function refreshFromPlayer(player){var state=playbackManager.getPlayerState(player);onStateChanged.call(player,{type:"init"},state)}function onStateChanged(event,state){this.isLocalPlayer&&"Video"===state.NowPlayingItem?.MediaType?state.IsBackgroundPlayback&&appRouter.setTransparency("backdrop"):appRouter.setTransparency("none")}function onPlaybackStopped(e,state){appRouter.setTransparency("none")}function releaseCurrentPlayer(){var player=currentPlayer;player&&(events.off(player,"playbackstart",onPlaybackStart),events.off(player,"statechange",onPlaybackStart),events.off(player,"playbackstop",onPlaybackStopped),currentPlayer=null)}function bindToPlayer(player){player!==currentPlayer&&(releaseCurrentPlayer(),currentPlayer=player)&&(refreshFromPlayer(player),events.on(player,"playbackstart",onPlaybackStart),events.on(player,"statechange",onPlaybackStart),events.on(player,"playbackstop",onPlaybackStopped))}events.on(playbackManager,"playerchange",function(e,player){bindToPlayer(player)}),bindToPlayer(playbackManager.getCurrentPlayer());
|