edde746
0d78020fbf
fix(images): reduce artwork decode pressure
2026-06-18 18:00:23 +02:00
edde746
075e4aeb32
fix(player): restore OSD auto-hide
...
close #1360
2026-06-18 10:18:57 +02:00
edde746
d9b03160f0
fix(video-controls): activate skip marker on select when controls hidden
...
close #1374
2026-06-18 07:59:26 +02:00
edde746
b11c63f557
fix: restore sidebar focus visibility
2026-06-18 04:29:34 +02:00
edde746
a75cf5fd35
fix(player): dismiss prompts on back
...
close #1373
2026-06-18 03:25:30 +02:00
edde746
6f39a286d3
fix(profiles): remount profile session
...
close #1371
2026-06-18 00:53:48 +02:00
edde746
1aa06ffe90
fix(tv): restore passthrough setting visibility
2026-06-15 13:28:38 +02:00
edde746
a4c444435f
fix(player): avoid overlapping performance stat fetches
2026-06-15 12:05:15 +02:00
edde746
7195702242
fix(player): repair Plex transcode seeking
...
close #1341
2026-06-14 23:39:05 +02:00
edde746
5e2bd4efa8
fix(video): release scrub chrome hold
...
close #1340
2026-06-14 18:34:12 +02:00
edde746
d6487e24c9
fix(tv): keep sidebar transparent
2026-06-14 14:53:56 +02:00
edde746
a861a4110f
feat(player): add mobile edge adjustments
2026-06-14 13:40:16 +02:00
edde746
849e62df7e
fix(jellyfin): honor continue watching action
...
close #1334
2026-06-14 07:25:40 +02:00
edde746
349b5b0513
fix(tv): stop playback behind menu
2026-06-14 06:27:00 +02:00
edde746
c39b5a5cf1
feat(player): show cache limit in perf overlay
2026-06-13 21:21:15 +02:00
edde746
c24a2aade0
fix(images): preserve media image filter quality
2026-06-13 18:19:23 +02:00
edde746
b56608f94f
fix(media): show source rating badges on TV
...
close #1327
2026-06-13 15:58:36 +02:00
edde746
2876e1bf78
fix(media): catch menu client and refresh failures
2026-06-13 13:25:48 +02:00
edde746
3c43874342
fix(tvos): update mpvkit audio passthrough
2026-06-13 10:24:15 +02:00
edde746
85d9b6ebab
fix(tvos): hide unsupported playback options
2026-06-13 10:13:02 +02:00
edde746
c2fe142293
refactor(watch): WatchActions owns mark-watched orchestration and events
2026-06-12 14:09:21 +02:00
edde746
431b0f9b0c
refactor(ui): shared watched indicator overlay
2026-06-12 13:56:47 +02:00
edde746
05251edaf3
fix(tv): close virtual keyboard when its text field unmounts
...
The keyboard is a navigator route, so a screen swapping out its form
left it floating over the new content. showTvVirtualKeyboard now
returns a route handle and the field host closes it on dispose.
2026-06-12 13:36:01 +02:00
edde746
7f1eb3a818
fix(focus): back over a dialog no longer pops the underlying screen
2026-06-12 13:19:29 +02:00
edde746
bd0a0c5d6b
feat(android): loudness normalization for exoplayer via audiofx
...
close #1289
2026-06-12 12:38:57 +02:00
edde746
71b05fd4b2
fix(ui): unwatched count badge grows as pill, caps at 999+
...
close #1310
2026-06-12 09:11:56 +02:00
edde746
587609d7f6
fix(tv): hug poster with focus border and add focus glow toggle
...
close #1278
2026-06-12 08:50:29 +02:00
edde746
cceba28d0a
fix(i18n): request localized Plex labels
...
close #1311
2026-06-12 07:59:35 +02:00
edde746
03c623e8c7
perf(grids): rebuild media grids on width change, not every scroll tick
2026-06-12 07:18:34 +02:00
edde746
2b34f4a9d7
perf(tv): reduced visual-effects tier for low-end devices
2026-06-12 06:30:38 +02:00
edde746
ad3cc6b986
feat(player): language-first audio & subtitle track labels
...
close #1307
2026-06-12 04:16:39 +02:00
edde746
f214c50c15
fix(player): responsive double-tap skip stacking
...
single tap stacks while the skip pill is visible, feedback shows before
the seek (instant on transcode restarts), fade-out hide timer is tracked so
a re-shown pill isn't killed mid-spree, and tap pairing uses the platform
kDoubleTapTimeout
2026-06-11 07:15:31 +02:00
edde746
1fc081ed6b
fix(player): eager timeline scrub gesture and stable slider tree
...
close #1302
2026-06-11 07:15:31 +02:00
edde746
3221a0cb1a
feat: add continue watching details navigation
...
close #1295
2026-06-10 12:50:32 +02:00
edde746
e7efa458e5
fix(images): preserve fallback placeholder size
...
close #1293
2026-06-10 09:55:22 +02:00
edde746
9b48f26463
refactor(watch): shared point-of-use resolution across consumers
...
Adds context.withFreshWatchState/readFreshWatchState and sweeps the
remaining session-critical readers: context menu actions, folder tree
rows, discover hero, and TV spotlight minutes-left.
2026-06-10 05:38:33 +02:00
edde746
3753967caf
fix(watch): resolve watch state per item at cards and playback open
...
Cards consult the hierarchy-aware store so container marks flip episode
rows instantly and a stale per-episode patch can no longer shadow a newer
show/season mark; playback opens with the session-fresh resume offset.
2026-06-10 05:23:09 +02:00
edde746
516925cf50
refactor(watch): promote overlay to hierarchy-aware WatchStateStore
...
Resolution now considers parentChain ancestors (newest event wins) and
watched patches set container leaf counts, so container marks reach
descendant cards and vice versa.
2026-06-10 05:18:02 +02:00
edde746
cd9498abb8
refactor(player): centralize playback opening
...
close #1280
2026-06-10 02:26:26 +02:00
edde746
e02daa89b8
fix(tvos): stop Home nav auto-playing continue watching
...
close #1281
2026-06-09 06:10:22 +02:00
edde746
d44a8994ce
fix(discover): open server tasks with remote
...
close #1272
2026-06-08 08:23:57 +02:00
edde746
42d9168941
fix(player): stabilize mobile content strip
2026-06-08 00:50:22 +02:00
edde746
38616770e5
fix(i18n): localize season & episode labels in downloads tree
2026-06-07 21:46:44 +02:00
edde746
bf7558f80d
fix(i18n): localize generic season names from server
...
close #1271
2026-06-07 21:46:24 +02:00
edde746
bbf7b1f9da
feat(overlay-sheet): opt-in PopScope so the host owns system back
...
Adds nullable canPop + onSystemBack to OverlaySheetHost. When canPop is
set, the host installs its own PopScope that closes an open sheet on a
system/route back instead of popping the screen; null keeps today's
behavior. Lets screens drop their hand-rolled sheet-back PopScopes.
2026-06-07 09:06:29 +02:00
edde746
01e5814943
fix(video): consolidate auto-skip cancellation
2026-06-07 06:13:14 +02:00
edde746
4c4b18e2cd
fix(i18n): localize hardcoded UI strings
...
close #1257
2026-06-06 11:45:34 +02:00
edde746
f74314bbf0
fix(livetv): debounce rapid time-shift skips to stop overshoot
2026-06-06 10:48:51 +02:00
edde746
32421e4c84
fix(tv): reach app bar actions via up from tabs
...
close #1202
2026-06-06 08:51:08 +02:00
edde746
d90cc61541
fix(tv): symmetric full-card focus glow via overlay
...
close #1231
2026-06-06 05:09:07 +02:00