wolfskin/app/src/main/java/com/github/damontecres/wholphin
Justin Caveda ed67e5575f
Add "Only Forced Subtitles" option to subtitle selection (#589)
## Description

Adds a client-side "Only Forced Subtitles" option when selecting
subtitles, per the discussion in #571.

  ### Changes

  - **TrackIndex.ONLY_FORCED** (`-3`): New constant for the special case
- **StreamChoiceService**: Intercepts `ONLY_FORCED` at the top of
`chooseSubtitleStream()` before server-side `SubtitlePlaybackMode` logic
(which remains untouched)
  - **UI**: Adds "Only Forced Subtitles" option to both:
    - In-player subtitle menu (`PlaybackDialog.kt`)
    - Pre-playback stream selection dialog (`Dialogs.kt`)

  ### Forced track detection

Uses metadata `isForced` flag as primary check, with title-based
fallback ("forced", "signs", "songs" patterns) when language matches
audio.

  ### Related issues

  Closes #571

  ### Screenshots

  N/A - subtitle selection menu only

  ### AI/LLM usage

  Used Claude Code for assistance and to draft PR description.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Damontecres <damontecres@gmail.com>
2026-01-11 13:11:39 -05:00
..
data Add "Only Forced Subtitles" option to subtitle selection (#589) 2026-01-11 13:11:39 -05:00
preferences Support resolution switching (#597) 2025-12-31 17:11:30 -05:00
services Add "Only Forced Subtitles" option to subtitle selection (#589) 2026-01-11 13:11:39 -05:00
ui Add "Only Forced Subtitles" option to subtitle selection (#589) 2026-01-11 13:11:39 -05:00
util Fix duplicate commands from key presses/MediaSession (#663) 2026-01-09 16:59:37 -05:00
MainActivity.kt Fixes websocket subscription, date invalidation, & theme music (#616) 2026-01-01 22:19:36 -05:00
WholphinApplication.kt Add resume/continue watching items to Android TV watch next row (#372) 2025-12-27 15:40:45 -05:00