mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-16 22:26:16 -08:00
fix(portals): fifth review round on the cinematic details
- Stalker movie and series menu launches in MPV/VLC close the title's own running external session first through the new shared replaceOwnedExternalSession(), cancelling when teardown is not confirmed or the selection moved on. - The reset-progress row is disabled while an external player owns the position, on the shared and the Xtream movie menus. - Every ISO comma-bearing country name stays whole in provider lists. - The dashboard hero spec competes a favorite movie for a slot so the movie-title case is actually exercised. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
026a69c14e
commit
87cc85a54f
14 files changed
+245
-20
No files matched your search
@@ -114,6 +114,9 @@ export function createVodDetailsHeroState(deps: VodDetailsHeroStateDeps) {
|
||||
hasPlaybackPosition: deps.hasPlaybackPosition(),
|
||||
hasStoredProgress:
|
||||
(deps.playbackPosition() ?? 0) > 0 || deps.isWatched(),
|
||||
// Inline playback collapses the hero; only an external
|
||||
// player can still own the row while the menu is reachable.
|
||||
playbackActive: deps.externalState() !== 'idle',
|
||||
})
|
||||
),
|
||||
};
|
||||
|
||||
@@ -164,6 +164,8 @@ export function buildVodMenuSections(input: {
|
||||
externalPlayerHint: 'MPV' | 'VLC';
|
||||
hasPlaybackPosition: boolean;
|
||||
hasStoredProgress: boolean;
|
||||
/** An external player owns the row: its next tick would undo a reset. */
|
||||
playbackActive: boolean;
|
||||
}): VodMoreMenuSection[] {
|
||||
const sourceRows: VodMoreMenuSection['items'][number][] = [];
|
||||
if (input.externalPlayerAvailable) {
|
||||
@@ -189,6 +191,7 @@ export function buildVodMenuSections(input: {
|
||||
id: VOD_DETAILS_MENU_ACTION.ResetProgress,
|
||||
labelKey: 'PORTALS.DETAIL.RESET_PROGRESS',
|
||||
icon: 'history_toggle_off',
|
||||
disabled: input.playbackActive,
|
||||
testId: 'vod-menu-reset-progress',
|
||||
});
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user