Commit Graph

75 Commits

Author SHA1 Message Date
hl-valdemar 7036109152 fix: track hover across the entire player to prevent overlay feedback flicker 2026-10-20 22:09:47 +02:00
hl-valdemar 9f1dca3081 feat: open streaming URLs without changing resolved handoffs 2026-10-19 19:49:06 +02:00
hl-valdemar d068c52e04 fix: route the URL shortcut to the inline input 2026-10-19 19:11:36 +02:00
hl-valdemar f6485bf221 feat: animate the start-screen URL field
Use a scoped 250 ms fade and top-anchored scale transition with animated recent-row reflow. Respect Reduce Motion, preserve the fixed window size, and exercise native focus, draft retention and rapid reversals.
2026-10-19 19:05:17 +02:00
hl-valdemar 6d653e8875 fix: enable window dragging outside interactive controls
Use background-only native drag gestures so scroll content and overlays remain draggable without stealing control, text, or queue-row input. Compact mode uses the same explicit drag surfaces rather than broad native background movement.
2026-10-19 19:05:17 +02:00
hl-valdemar a6fa54fc42 feat: adopt a two-pane start screen 2026-10-18 23:02:22 +02:00
hl-valdemar 4b9436c04a fix: play playlist entries on single click 2026-10-18 22:50:14 +02:00
hl-valdemar ef3aae842d fix: keep playlist reordering active while dragging 2026-10-18 22:39:43 +02:00
hl-valdemar 2e5255e194 fix: anchor title controls outside the animated queue clip 2026-10-18 22:12:23 +02:00
hl-valdemar 22f13dd08d feat: animate queue sidebar expansion and collapse 2026-10-18 21:56:24 +02:00
hl-valdemar ddf53ea606 fix: skip disposable pictures during local seek preroll 2026-10-18 20:18:14 +02:00
hl-valdemar 4ca6e80cb0 fix: restore sidebar header and balance footer sizing 2026-10-18 19:48:42 +02:00
hl-valdemar c2261ad2f0 fix: scope control fades to preserve responsive window animation 2026-10-18 18:59:08 +02:00
hl-valdemar 29a70678a4 fix: stabilize native window layout transitions 2026-10-18 18:37:36 +02:00
hl-valdemar 640e23b004 fix: stabilize aspect locked queue window resizing 2026-10-18 10:44:08 +02:00
hl-valdemar 8cd5db5375 fix: preserve video aspect ratio while resizing queue window 2026-10-18 09:48:51 +02:00
hl-valdemar dd02383c0b fix: restore positive resize increments when clearing aspect lock 2026-10-18 02:13:42 +02:00
hl-valdemar 3e782aff31 fix: observe playback state to unhide native video surface 2026-10-18 02:08:28 +02:00
hl-valdemar 07243f0ed7 fix: restore window and keyboard interactions with queue 2026-10-18 02:05:25 +02:00
hl-valdemar afb0c30e09 fix: remove gap beside playback queue 2026-10-18 01:51:51 +02:00
hl-valdemar 1d33f5d572 fix: expand window outward for playback queue 2026-10-18 01:19:05 +02:00
hl-valdemar ce903e2367 feat: add editable playback queue 2026-10-18 00:22:36 +02:00
hl-valdemar d4704af442 fix: round final compact progress fraction to completion 2026-10-17 23:21:46 +02:00
hl-valdemar 2b96a165d2 fix: prevent idle sleep during playback 2026-10-17 22:10:07 +02:00
hl-valdemar 3368228537 feat: add compact progress decimal 2026-10-17 18:56:53 +02:00
hl-valdemar 0aa0ed781f perf: prioritize audio preroll after paused network previews 2026-10-17 02:11:49 +02:00
hl-valdemar e1284936f9 perf: benchmark native and Cast startup, seeks, and sustained playback 2026-10-17 01:56:33 +02:00
hl-valdemar fcad96de62 perf: prefer VideoToolbox decoding with software fallback 2026-10-17 01:42:53 +02:00
hl-valdemar 599c1492ee perf: retain Cast codecs across sequential VOD segments 2026-10-17 01:07:53 +02:00
hl-valdemar acb69fbe8a perf: remux indexed Cast video at keyframe boundaries 2026-10-17 00:37:47 +02:00
hl-valdemar 880b596765 perf: coalesce superseded queued playback seeks 2026-10-17 00:07:22 +02:00
hl-valdemar 367afdfb07 refactor: concentrate Cast ownership and preserve intent on disconnect 2026-10-17 00:02:14 +02:00
hl-valdemar ad4b2da5c8 fix: share buffered Cast HLS input and select streams 2026-10-13 23:20:20 +02:00
hl-valdemar b9e63cd760 fix: separate Cast launch readiness, preserve volume intent and reuse seek inputs 2026-10-13 22:01:59 +02:00
hl-valdemar bb777b0ecd feat: add Chromecast playback support 2026-10-13 21:39:38 +02:00
hl-valdemar 4ef8ceee24 fix: preserve audio samples across Miruro timestamp jitter 2026-10-13 16:36:14 +02:00
hl-valdemar 1aa5454194 ui: refine subtitle layout and preserve hidden controls on seeks 2026-10-13 00:05:05 +02:00
hl-valdemar e66f45d9ef ui: restore visible caption Off and compact settings controls 2026-10-12 23:46:54 +02:00
hl-valdemar 470d8feec2 feat: play resolved Miruro HLS with external VTT and stable episode progress 2026-10-12 21:22:20 +02:00
hl-valdemar 1f12660936 feat: remember manually resized compact window width 2026-10-12 17:01:15 +02:00
hl-valdemar daac27be8d fix: keep compact title progress adjacent and truncate the title tail 2026-10-12 16:36:54 +02:00
hl-valdemar 35fa89e492 feat: configure duration-aware progress in compact titles 2026-10-12 16:00:33 +02:00
hl-valdemar 30cf85e880 fix: give native Quit its Command shortcut during text editing 2026-10-12 15:25:55 +02:00
hl-valdemar 93acc1436a ui: frost playback titles and hide chrome on pointer exit 2026-10-12 13:55:46 +02:00
hl-valdemar 1e75f554f0 fix: allow compact mode while media is loading 2026-10-12 12:18:11 +02:00
hl-valdemar f495c8b719 feat: animate compact window transitions 2026-10-12 10:38:59 +02:00
hl-valdemar e54cb2b549 fix: reconnect interrupted video streams
Enable bounded FFmpeg reconnection for recorded range-seekable HTTP inputs, preserving compressed cache, byte offset and playback intent. A five-second socket timeout leaves recovery room inside the existing fifteen-second I/O deadline. Keep live/non-range replay and signed-URL refresh disabled.

Native regression failed before the fix with Reading network media: Input/output error. Real combined/split playback now survives dropped responses and socket timeout; persistent failures remain visible and retries are cancellable by seek, close, replacement and destruction.

Release, network, adaptive, media, reporting, runtime, relocated bundle and local playback checks passed. Packaged CLI/GUI playback started successfully; the full-suite keyboard smoke stopped because macOS refused foreground focus for its transparent check window.
2026-10-12 02:18:12 +02:00
hl-valdemar 31c4759c1d build: bundle playback and YouTube dependencies
Build pinned LGPL playback libraries and package standalone YouTube helpers inside the signed native app. Keep the CLI inside the app and relocate private library links for installation without runtime Homebrew dependencies.

Record adaptive fixture completion in its EXIT trap: cancellation can exit with status 143 before the TERM trap writes its marker, while native pause and quality preservation remain correct.
2026-10-12 01:52:51 +02:00
hl-valdemar 8eba97579f refactor: concentrate playback transition ownership 2026-10-12 00:58:23 +02:00
hl-valdemar cc99a2a4f8 feat: report authoritative playback progress from shared backend 2026-10-11 21:34:08 +02:00