Uruk
55595bea9b
feat(chapters): add ChapterTicks slider overlay
2026-05-22 11:54:32 +02:00
Uruk
0cf6630af9
feat(chapters): add pure chapter helpers
2026-05-22 11:54:31 +02:00
Uruk
41f6116ba8
docs(casting): add autoplay+countdown design (deferred pending chapters)
2026-05-22 11:31:57 +02:00
Uruk
1e3311fea9
fix(casting): trickplay bubble positioning and mini-player preview
...
Position the trickplay/scrub bubble above the progress bar and let the
slider own horizontal placement (bubbleMaxWidth/bubbleWidth = tile width)
so the preview tracks the cursor and is clamped at the track edges. Wire
the mini-player trickplay to the fetched full item and size its tile/thumb.
2026-05-22 11:05:10 +02:00
Uruk
e400378684
docs(casting): mark UX player sub-project done in handoff
2026-05-22 10:07:19 +02:00
Uruk
21c0fb4b6c
feat(casting): add DEBUG_TOUCH_ZONES overlay for hit-area calibration
2026-05-22 10:02:17 +02:00
Uruk
b9e87e51cc
feat(casting): mini-player trickplay fix and stop button
2026-05-22 09:57:05 +02:00
Uruk
c3a9b451b6
fix(casting): clamp trickplay bubble via slider bubbleWidth
2026-05-22 09:55:23 +02:00
Uruk
418bd506c0
feat(casting): add shared CastTrickplayBubble component
2026-05-22 09:47:36 +02:00
Uruk
b0e92d8689
docs(casting): add player UX implementation plan
2026-05-22 09:34:38 +02:00
Uruk
4ae656818c
docs(casting): add player UX (trickplay/bubble/mini-player) design spec
...
Fix trickplay bubble truncation via bubbleWidth, extract a shared
CastTrickplayBubble, lighten the time display, add a mini-player stop
button, and add a DEBUG_TOUCH_ZONES overlay for hand-calibrating panHitSlop.
2026-05-22 09:31:15 +02:00
Uruk
99527e1fae
feat(casting): full-width labelled stop button for movies
2026-05-22 07:57:58 +02:00
Uruk
1ca6e0853b
docs(casting): record player feature ideas and touch-zone note in handoff
2026-05-22 02:46:43 +02:00
Uruk
f99ce8210c
feat(casting): show stop button when playing a movie
2026-05-22 02:45:20 +02:00
Uruk
674e252641
refactor: remove duplicate BitRateSheet, use shared BitrateSelector
2026-05-22 02:44:25 +02:00
Uruk
119b7ad937
refactor(casting): drop unused liveProgress export
2026-05-22 02:43:52 +02:00
Uruk
788a3b7cfd
docs(casting): add chromecast refactor handoff & resume document
...
Captures the full state of the A/B/C/D sub-projects and the #1367 prep:
commit ranges, verification status, pending queue, key decisions, and
how to resume the work in a later session.
2026-05-22 02:32:36 +02:00
Uruk
8b94f491e4
fix(playback): dispatch each remote command once; stabilise controllers
2026-05-22 02:30:29 +02:00
Uruk
e9f61a2f7c
fix(casting): guard against stale currentItem during episode load
2026-05-22 02:24:13 +02:00
Uruk
6ca1f63877
feat(casting): hide episode buttons when no adjacent episode
2026-05-22 02:22:03 +02:00
Uruk
0cc3a8469d
fix(casting): report the real PlayMethod to Jellyfin
2026-05-22 02:20:51 +02:00
Uruk
b38064e2da
feat(music): register music PlaybackController
2026-05-22 02:19:13 +02:00
Uruk
5b823a8efd
feat(player): register native-video PlaybackController
2026-05-22 02:17:30 +02:00
Uruk
750caba038
feat(casting): register cast PlaybackController for remote control
2026-05-22 02:11:20 +02:00
Uruk
d3ee6c8239
feat(playback): handle remote-control messages over WebSocket
2026-05-22 02:07:10 +02:00
Uruk
7e2ef0f2da
feat(playback): add useRemoteControl dispatch hook
2026-05-22 02:06:12 +02:00
Uruk
ca2e657eac
feat(playback): add pure remote-command mapper
2026-05-22 02:05:10 +02:00
Uruk
288b390e5b
feat(playback): add PlaybackController contract and registry
2026-05-22 02:03:36 +02:00
Uruk
c04924fe9e
docs(casting): add session reporting & remote control plan
...
10-task plan for sub-project D: PlaybackController registry, pure
remote-command mapper, useRemoteControl dispatch, per-player
registration, PlayMethod fix, conditional episode buttons, loadEpisode
race fix.
2026-05-22 02:02:17 +02:00
Uruk
525a6b39fa
docs(casting): add session reporting & remote control design spec
...
Design for sub-project D: correct PlayMethod reporting, conditional
episode buttons, loadEpisode race fix, and app-wide Jellyfin remote
control (Playstate/GeneralCommand) routed via a PlaybackController.
2026-05-22 01:58:30 +02:00
Uruk
1ea7f0f491
refactor(casting): extract useCastPlayerProgress hook
2026-05-22 01:32:21 +02:00
Uruk
79c2829444
refactor(casting): extract useCastDismissGesture hook
2026-05-22 01:22:21 +02:00
Uruk
87e0b0006b
refactor(casting): extract useCastEpisodes hook
2026-05-22 01:18:08 +02:00
Uruk
3c71c08591
refactor(casting): extract useCastPlayerItem hook
2026-05-22 01:15:29 +02:00
Uruk
9f4f0fa7d1
refactor(casting): extract CastPlayerTransportControls
2026-05-22 01:10:30 +02:00
Uruk
0d922b75d6
refactor(casting): extract CastPlayerProgressBar
2026-05-22 01:08:04 +02:00
Uruk
0ee1d43d16
refactor(casting): extract CastPlayerEpisodeControls
2026-05-22 01:02:37 +02:00
Uruk
ec49d03cf1
refactor(casting): extract CastPlayerPoster
2026-05-22 00:59:57 +02:00
Uruk
02df2477d8
refactor(casting): extract CastPlayerHeader and CastPlayerTitle
2026-05-22 00:57:55 +02:00
Uruk
8c9506c7b5
docs(casting): add casting-player split implementation plan
...
10-task plan for sub-project C: extract 6 presentational components +
4 hooks from casting-player.tsx, leaving a thin orchestrator. Purely
mechanical, behaviour-neutral.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-22 00:56:21 +02:00
Uruk
b225286f57
docs(casting): add casting-player split design spec
2026-05-22 00:53:17 +02:00
Uruk
23b4f20d18
fix(casting): track menus from full item, keep quality on version switch, stable resume position
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-22 00:05:14 +02:00
Uruk
88d96603e4
feat(casting): reliable track switching with CastSelection truth
2026-05-21 23:58:22 +02:00
Uruk
6e513b8f9e
feat(player): expand shared BITRATES ladder
2026-05-21 23:50:21 +02:00
Uruk
4f50ec6665
feat(casting): add useCastSelection hook
2026-05-21 23:49:23 +02:00
Uruk
0e25a5936c
feat(casting): resolve and embed full CastSelection on load
2026-05-21 23:48:29 +02:00
Uruk
e9fee79130
feat(casting): embed CastSelection in cast customData
2026-05-21 23:47:23 +02:00
Uruk
3d65c3bb7a
feat(casting): add CastSelection model and resolution helpers
2026-05-21 23:46:19 +02:00
Uruk
e5d61bf3ea
docs(casting): add track switching implementation plan
...
6-task plan for sub-project B: CastSelection model, customData source of
truth, useCastSelection hook, expanded BITRATES, casting-player and
settings-menu rework.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-21 23:44:05 +02:00
Uruk
5eac91190e
docs(casting): quality filter by media bitrate + device cap
...
Per review: filter quality tiers by both ceilings; correct the shared
BITRATES file reference to BitrateSelector.tsx.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-21 23:43:44 +02:00