edde746
db7bc17c49
chore(website): remove tests and update SvelteKit
2026-07-24 20:30:45 +02:00
edde746
d1cec00b51
fix(ci): repair native and Maestro checks
2026-07-24 20:30:45 +02:00
edde746
102ef46d00
feat(jellyfin): lazily page recently added hubs
...
close #1611
2026-07-24 20:29:21 +02:00
edde746
d6b24c3e07
fix(android): prevent Dolby Vision seek crashes
2026-07-24 19:10:38 +02:00
edde746
4cc9a35b2e
fix(android): use OpenGLES on 32-bit TCL TVs
2026-07-24 12:22:58 +02:00
edde746
40833e65ec
fix(ci): align toolchains and isolate platform tests
2026-07-24 10:06:50 +02:00
edde746
6c03094ef1
fix(settings): label image-only cache clearing accurately
2026-07-24 08:09:14 +02:00
edde746
269bb7a322
fix(playback): recover episode navigation without Plex queues
2026-07-24 08:08:10 +02:00
edde746
54273ab09c
fix(downloads): recover from full storage
...
close #1655
2026-07-24 07:48:42 +02:00
ad7ef112fc
feat(i18n): add Hungarian and Traditional Chinese locales
...
Complete and revise every shipped locale against the current English source, preserve locale-specific plurals, and map script-specific Chinese locales through device, Intl, duration, and Plex boundaries.
Co-authored-by: emgeje <mgj@mgj.hu >
Co-authored-by: junyou1998 <junyou1998@gmail.com >
2026-07-24 07:30:43 +02:00
edde746
0c6dab01b3
build(deps): upgrade Flutter package dependencies
2026-07-24 03:56:40 +02:00
edde746
3c2a353d32
build(android): upgrade Gradle and Kotlin toolchain
2026-07-24 03:56:40 +02:00
edde746
54a002f9b7
fix(android): consolidate native media decoders
2026-07-24 03:56:40 +02:00
edde746
fb45ff44f3
fix(android): persist startup and runtime exit diagnostics
2026-07-24 03:56:40 +02:00
edde746
9f2e050797
fix(native): bound cross-platform lifecycle ownership
2026-07-24 03:56:40 +02:00
edde746
09656fa4d3
fix(supply-chain): verify CI and production inputs
...
Pin external actions, images, toolchains, native archives, and tvOS engine artifacts; enforce fail-closed CI checks and keep website privacy disclosures aligned with shipped behavior.
2026-07-24 03:56:40 +02:00
edde746
b41fb4fe75
fix(ui): harden settings focus and semantics
2026-07-24 03:46:50 +02:00
edde746
f8bfecf57d
fix(media): serialize browsing and metadata mutations
2026-07-24 03:46:50 +02:00
edde746
43a8fe020d
fix(relay): secure reconnect and room ownership
2026-07-24 03:46:50 +02:00
edde746
e0bf66eea8
fix(runtime): harden application service boundaries
2026-07-24 03:46:46 +02:00
edde746
658da37b48
build: make toolchain inputs reproducible
2026-07-24 03:40:06 +02:00
edde746
1d1c301f61
test: stabilize deterministic integration coverage
2026-07-24 03:40:06 +02:00
edde746
d98e85614a
fix(settings): match services-page compact row style on desktop
2026-07-20 10:49:44 +02:00
edde746
5fb167898e
fix(tv): play episodes from detail rails
...
close #1608
2026-07-20 10:28:31 +02:00
edde746
0283c3bfff
fix(plex): skip malformed subtitle streams
...
close #1589
2026-07-20 10:28:31 +02:00
edde746
e32fcc2190
feat(explore): add AniList, Simkl, and Plex catalogs
2026-07-20 10:28:31 +02:00
edde746
0707d4d9b1
fix(live-tv): stabilize HLS playback
2026-07-18 20:04:09 +02:00
edde746
46dfc7f992
feat(detail): show episode file sizes
2026-07-18 13:32:40 +02:00
edde746
a1b6a89714
fix(player): load subtitle sidecars with media
...
close #1583
2026-07-17 23:09:07 +02:00
edde746
70cd7e8c67
fix(music): keep now playing state current
...
close #1600
2026-07-17 16:30:10 +02:00
edde746
5b90c4bca0
fix(images): decode cast cards at the square grid-cell budget
...
close #1591
2026-07-17 09:04:01 +02:00
edde746
6df8aba097
fix(nav): preserve HTPC escape behavior
...
Use Flutter's supported desktop application-exit API so the second root Back press closes Plezy on Windows. Preserve fullscreen when video player navigation is enabled while keeping fullscreen-first Escape behavior for normal desktop use.
close #1582
2026-07-16 20:43:10 +02:00
edde746
a244d249bd
fix(detail): stop cropping the hero backdrop on wide windows
...
close #1588
2026-07-16 16:00:30 +02:00
edde746
ac9a5914a2
fix(plex): handle malformed lyrics XML
2026-07-16 14:36:48 +02:00
edde746
b7cd4e5e9c
fix(music): preserve Jellyfin collection posters
2026-07-16 14:36:48 +02:00
edde746
ff602f1456
fix(plex): load local lyrics
...
Closing #1585
2026-07-16 12:56:16 +02:00
edde746
517c3f57ce
fix(music): keep collection and playlist artwork square
2026-07-16 12:37:02 +02:00
edde746
d253450e9d
fix(plex): show all artist releases
...
close #1577
2026-07-15 08:49:06 +02:00
edde746
fa901be328
fix(e2e): run emulator suites through Python
2026-07-15 08:25:55 +02:00
edde746
74cae73844
fix(ci): restore Dart formatting gate
2026-07-15 08:25:42 +02:00
edde746
0bcd00bcb6
ci: harden privileged workflow trust boundaries
2026-07-15 07:57:42 +02:00
edde746
54a4b8e414
refactor(mpv): move common code to shared
2026-07-15 07:57:02 +02:00
edde746
87c0547090
ci: harden pull request workflows
2026-07-15 07:15:34 +02:00
edde746
9471e30585
ci(test): consolidate Maestro workflow setup
2026-07-15 06:58:22 +02:00
edde746
ea4bd21977
fix(tv): refresh retained spotlight metadata
2026-07-15 06:40:59 +02:00
edde746
3168f6327f
fix(tv): make select activation one-shot
2026-07-15 06:40:47 +02:00
edde746
139cf83507
feat(test): add Maestro end-to-end coverage
2026-07-15 06:40:35 +02:00
edde746
ddb7520ce8
fix(jellyfin): promote redirected server URLs
2026-07-14 23:05:57 +02:00
edde746
abf1027b77
feat(plex): migrate video transcoding to HLS
2026-07-14 18:11:04 +02:00
edde746
9d812fa3cc
fix(plex): match legacy agent GUIDs
...
closing #1566
2026-07-14 18:11:04 +02:00
edde746
8c88385977
feat(jellyfin): cycle media backdrops
...
close #1568
2026-07-14 07:24:11 +02:00
edde746
30c978719b
fix(ci): update actions for Node 24
2026-07-14 07:23:16 +02:00
edde746
12eb9b71b6
fix(ci): disable crashing analyzer plugin
2026-07-14 07:23:16 +02:00
edde746
0cb19a4e30
feat(website): adopt expressive material design
2026-07-14 07:19:46 +02:00
edde746
991aee6c90
fix(ci): resolve analyzer and settings test failures
2026-07-14 01:21:38 +02:00
edde746
cbb0a01c5f
fix(release): create untagged build drafts
2026-07-14 00:33:12 +02:00
edde746
d86e820a16
fix(android): trust user-installed CAs
2026-07-14 00:24:54 +02:00
edde746
1bdd76d95a
fix(plex): wait for shared server resource tokens
2026-07-14 00:15:46 +02:00
edde746
0a3e9d9e89
build(apple): bump MPVKit to 1.0.13
2026-07-13 23:37:30 +02:00
edde746
a0013323f2
chore(ui): enforce icon consistency
2026-07-13 23:13:53 +02:00
edde746
d5f3e581df
fix: eliminate cross-app consistency drift
2026-07-13 23:13:53 +02:00
edde746
ec249d2ed4
fix(jellyfin): repair music library browsing
...
Fixes #1557
2026-07-13 22:58:12 +02:00
edde746
d6ad6a9506
fix(settings): align mobile option typography
2026-07-13 22:14:27 +02:00
edde746
7400a10c59
fix(release): prevent published asset replacement
2026-07-13 21:48:44 +02:00
edde746
dfeffad044
fix(windows): forward touch input over video
2026-07-13 18:48:58 +02:00
edde746
40792e2779
fix: restore focus and interaction behavior
2026-07-13 17:00:50 +02:00
edde746
822657972d
fix(android): enforce minSdk compatibility
2026-07-13 17:00:50 +02:00
edde746
ae71b7bc64
fix(android): guard API 29 codec query
...
close #1553
2026-07-13 17:00:49 +02:00
edde746
e15bbed554
test(servers): cover exhaustion reconnection and offline retry loop
...
Adds a production-wired exhaustion trigger hook, documents the
no-throw invariant behind the fire-and-forget verification probe, and
covers the confirmed-offline reconnect and debounce-driven recovery.
2026-07-13 12:05:23 +02:00
edde746
65e63c206e
fix(jellyfin): slim music hub row fields
...
close #1552
Latest Albums returns MusicAlbum folder dtos, where the browse count/user-data
fields each cost a recursive per-album COUNT query; request it with the slim
album fields + EnableUserData=false under a dedicated latestalbums identifier,
and drop the folder fields and Overview from the played-track rows.
2026-07-13 12:05:23 +02:00
edde746
f104b5ffae
fix(jellyfin): prevent false offline loops
2026-07-13 11:30:17 +02:00
edde746
e4db04fa62
fix: align UI focus and sheet behavior
2026-07-13 11:28:32 +02:00
edde746
e6e7d8cdfd
test: remove redundant coverage and shorten timers
2026-07-13 02:15:03 +02:00
edde746
8210b23d31
fix(ci): set explicit release tag
2026-07-13 01:42:41 +02:00
edde746
e03edad824
fix: prevent async state and platform regressions
2026-07-13 00:03:52 +02:00
edde746
26d14f7cb0
fix(seerr): align request button focus
2026-07-12 22:19:42 +02:00
edde746
b9f828ae88
refactor(livetv): reuse standard hub cards
2026-07-12 22:11:30 +02:00
edde746
098a472670
fix(catalog): restore TV focus navigation
2026-07-12 21:42:27 +02:00
edde746
780a1ea180
fix(ci): restore analyzer and unit checks
2026-07-12 19:55:24 +02:00
edde746
917f6a2839
fix: guard lifecycle-bound state updates
2026-07-12 19:00:28 +02:00
edde746
2101f1d7f0
perf: isolate focus and media rebuilds
2026-07-12 19:00:11 +02:00
edde746
a561777456
perf: reduce state notification fan-out
2026-07-12 18:59:58 +02:00
edde746
b4575c9780
fix: preserve live TV state across refreshes
2026-07-12 18:59:42 +02:00
edde746
0ef1e773bb
fix: scope navigation callbacks to active owners
2026-07-12 18:59:27 +02:00
edde746
cd88f73f05
fix: serialize async state transitions
2026-07-12 18:59:14 +02:00
edde746
d1c4ae83eb
fix(review): resolve post-consolidation regressions
2026-07-12 17:31:16 +02:00
edde746
858952929b
fix(deps): refresh and document native dependencies
2026-07-12 17:31:16 +02:00
edde746
b676ef6c56
refactor(android): harden and share player integration
2026-07-12 17:31:15 +02:00
edde746
a9493f4f0e
fix(relay): harden lifecycle and protocol handling
2026-07-12 17:31:15 +02:00
edde746
fe8d405a56
fix(i18n): enforce complete localized coverage
2026-07-12 17:31:14 +02:00
edde746
754c54761a
refactor(downloads): consolidate task and metadata flows
2026-07-12 17:31:13 +02:00
edde746
7ecadffdb1
refactor(features): consolidate shared feature primitives
2026-07-12 17:31:13 +02:00
edde746
6506f36843
refactor(app): share client and presentation scaffolds
2026-07-12 17:31:12 +02:00
edde746
97f7508067
refactor(core): consolidate shared app foundations
2026-07-12 17:31:12 +02:00
edde746
a481fc1000
refactor(dialogs): unify text input contract
2026-07-12 08:42:26 +02:00
edde746
b7078448ea
refactor(mpv): unify property decoding
2026-07-12 08:42:26 +02:00
edde746
359a6bf02a
refactor(live-tv): split optional DVR support
2026-07-12 08:42:25 +02:00
edde746
a5449a1430
refactor(ci): matrix architecture builds
2026-07-12 08:42:25 +02:00
edde746
6182c34448
perf(playlists): bound card inflation
2026-07-12 08:42:25 +02:00
edde746
699e73bcd5
fix(downloads): propagate hierarchical watch state
2026-07-12 08:42:25 +02:00