1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Merge pull request #6172 from thornbill/fix-playback-subscriber-bind

This commit is contained in:
Bill Thornton 2024-10-09 08:49:30 -04:00 committed by GitHub
commit 6f5c8c8cfc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -39,35 +39,35 @@ export interface PlaybackSubscriber {
} }
export abstract class PlaybackSubscriber { export abstract class PlaybackSubscriber {
private player: Plugin | undefined; protected player: Plugin | undefined;
private readonly playbackManagerEvents = { private readonly playbackManagerEvents = {
[PlaybackManagerEvent.PlaybackCancelled]: this.onPlaybackCancelled, [PlaybackManagerEvent.PlaybackCancelled]: this.onPlaybackCancelled?.bind(this),
[PlaybackManagerEvent.PlaybackError]: this.onPlaybackError, [PlaybackManagerEvent.PlaybackError]: this.onPlaybackError?.bind(this),
[PlaybackManagerEvent.PlaybackStart]: this.onPlaybackStart, [PlaybackManagerEvent.PlaybackStart]: this.onPlaybackStart?.bind(this),
[PlaybackManagerEvent.PlaybackStop]: this.onPlaybackStop, [PlaybackManagerEvent.PlaybackStop]: this.onPlaybackStop?.bind(this),
[PlaybackManagerEvent.PlayerChange]: this.onPlayerChange, [PlaybackManagerEvent.PlayerChange]: this.onPlayerChange?.bind(this),
[PlaybackManagerEvent.ReportPlayback]: this.onReportPlayback [PlaybackManagerEvent.ReportPlayback]: this.onReportPlayback?.bind(this)
}; };
private readonly playerEvents = { private readonly playerEvents = {
[PlayerEvent.Error]: this.onPlayerError, [PlayerEvent.Error]: this.onPlayerError?.bind(this),
[PlayerEvent.FullscreenChange]: this.onPlayerFullscreenChange, [PlayerEvent.FullscreenChange]: this.onPlayerFullscreenChange?.bind(this),
[PlayerEvent.ItemStarted]: this.onPlayerItemStarted, [PlayerEvent.ItemStarted]: this.onPlayerItemStarted?.bind(this),
[PlayerEvent.ItemStopped]: this.onPlayerItemStopped, [PlayerEvent.ItemStopped]: this.onPlayerItemStopped?.bind(this),
[PlayerEvent.MediaStreamsChange]: this.onPlayerMediaStreamsChange, [PlayerEvent.MediaStreamsChange]: this.onPlayerMediaStreamsChange?.bind(this),
[PlayerEvent.Pause]: this.onPlayerPause, [PlayerEvent.Pause]: this.onPlayerPause?.bind(this),
[PlayerEvent.PlaybackStart]: this.onPlayerPlaybackStart, [PlayerEvent.PlaybackStart]: this.onPlayerPlaybackStart?.bind(this),
[PlayerEvent.PlaybackStop]: this.onPlayerPlaybackStop, [PlayerEvent.PlaybackStop]: this.onPlayerPlaybackStop?.bind(this),
[PlayerEvent.PlaylistItemAdd]: this.onPlayerPlaylistItemAdd, [PlayerEvent.PlaylistItemAdd]: this.onPlayerPlaylistItemAdd?.bind(this),
[PlayerEvent.PlaylistItemMove]: this.onPlayerPlaylistItemMove, [PlayerEvent.PlaylistItemMove]: this.onPlayerPlaylistItemMove?.bind(this),
[PlayerEvent.PlaylistItemRemove]: this.onPlayerPlaylistItemRemove, [PlayerEvent.PlaylistItemRemove]: this.onPlayerPlaylistItemRemove?.bind(this),
[PlayerEvent.RepeatModeChange]: this.onPlayerRepeatModeChange, [PlayerEvent.RepeatModeChange]: this.onPlayerRepeatModeChange?.bind(this),
[PlayerEvent.ShuffleModeChange]: this.onPlayerShuffleModeChange, [PlayerEvent.ShuffleModeChange]: this.onPlayerShuffleModeChange?.bind(this),
[PlayerEvent.Stopped]: this.onPlayerStopped, [PlayerEvent.Stopped]: this.onPlayerStopped?.bind(this),
[PlayerEvent.TimeUpdate]: this.onPlayerTimeUpdate, [PlayerEvent.TimeUpdate]: this.onPlayerTimeUpdate?.bind(this),
[PlayerEvent.Unpause]: this.onPlayerUnpause, [PlayerEvent.Unpause]: this.onPlayerUnpause?.bind(this),
[PlayerEvent.VolumeChange]: this.onPlayerVolumeChange [PlayerEvent.VolumeChange]: this.onPlayerVolumeChange?.bind(this)
}; };
constructor( constructor(