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

Use UpNextDialog for outro segments

This commit is contained in:
viown 2024-10-19 20:08:27 +03:00
parent 7ad7f07b7c
commit 9b269296fe
7 changed files with 34 additions and 18 deletions

View file

@ -56,16 +56,7 @@ class SkipSegment extends PlaybackSubscriber {
setButtonText() {
if (this.skipElement && this.currentSegment) {
if (this.player && this.currentSegment.EndTicks
&& this.currentSegment.Type === MediaSegmentType.Outro
&& this.currentSegment.EndTicks >= this.playbackManager.currentItem(this.player).RunTimeTicks
&& this.playbackManager.getNextItem()
) {
// Display "Next Episode" if it's an outro segment, exceeds or is equal to the runtime, and if there is a next track.
this.skipElement.innerHTML += globalize.translate('MediaSegmentNextEpisode');
} else {
this.skipElement.innerHTML = globalize.translate('MediaSegmentSkipPrompt', globalize.translate(`MediaSegmentType.${this.currentSegment.Type}`));
}
this.skipElement.innerHTML = globalize.translate('MediaSegmentSkipPrompt', globalize.translate(`MediaSegmentType.${this.currentSegment.Type}`));
this.skipElement.innerHTML += '<span class="material-icons skip_next" aria-hidden="true"></span>';
}
}
@ -132,7 +123,15 @@ class SkipSegment extends PlaybackSubscriber {
}
}
onPromptSkip(segment: MediaSegmentDto) {
onPromptSkip(e: Event, segment: MediaSegmentDto) {
if (this.player && segment.EndTicks != null
&& segment.Type === MediaSegmentType.Outro
&& segment.EndTicks >= this.playbackManager.currentItem(this.player).RunTimeTicks
&& this.playbackManager.getNextItem()
) {
// Don't display button when UpNextDialog is expected.
return;
}
if (!this.currentSegment) {
this.currentSegment = segment;