edde746
|
c602936d2a
|
fix: support forced skip marker fallback
close #956
|
2026-05-01 04:35:30 +02:00 |
|
edde746
|
a351ca70ba
|
fix: localize remaining i18n strings
|
2026-05-01 04:12:55 +02:00 |
|
edde746
|
396a5a8453
|
Merge pull request #955 from bryceknz/fix/951-test-expectations
Fix media version label tests
|
2026-05-01 03:54:39 +02:00 |
|
edde746
|
a605db31f9
|
fix: split app database tests for lint
|
2026-05-01 03:24:15 +02:00 |
|
edde746
|
35ca723c20
|
chore: update issue templates
|
2026-05-01 03:20:49 +02:00 |
|
edde746
|
7057ee93ac
|
fix: defer profile binding before selection
|
2026-05-01 03:16:32 +02:00 |
|
edde746
|
6cde5b6bd1
|
style: format database generated code
|
2026-05-01 01:54:56 +02:00 |
|
edde746
|
08564bba20
|
feat: merge jellyfin support
|
2026-05-01 01:54:56 +02:00 |
|
edde746
|
495f2e3640
|
chore: update SDK constraints
|
2026-05-01 01:47:05 +02:00 |
|
edde746
|
31d2d9dc98
|
feat: jellyfin
|
2026-05-01 01:20:36 +02:00 |
|
edde746
|
68d34f81a0
|
Merge pull request #952 from bryceknz/fix/951-uhd-version-labels
Fix UHD version labels
|
2026-05-01 00:59:30 +02:00 |
|
edde746
|
9f19082d47
|
fix(android): hole-punch video and libass surfaces on API 36+
|
2026-04-30 16:04:16 +02:00 |
|
edde746
|
d66e5af289
|
fix(livetv): fall back to legacy channels endpoint when cloud guide errors
|
2026-04-28 04:21:40 +02:00 |
|
edde746
|
c5867861eb
|
fix(playback): coalesce concurrent player init to fix MPV hang
|
2026-04-28 04:16:02 +02:00 |
|
edde746
|
fdede5f643
|
chore: dart format focusable_tab_chip.dart
|
2026-04-28 04:16:02 +02:00 |
|
edde746
|
bb0f70c75c
|
Merge pull request #926 from micahmo/feature/show-posters
Show season posters on tab in show view
|
2026-04-27 15:31:39 +02:00 |
|
edde746
|
240389fb6d
|
fix(ci): upload symbols outside release path
|
2026-04-27 13:23:30 +02:00 |
|
edde746
|
ca6cb46ba8
|
fix: upload symbols as individual files
|
2026-04-27 12:44:59 +02:00 |
|
edde746
|
616ed72503
|
fix: exclude mal/anilist/simkl session keys from settings export
|
2026-04-27 12:17:34 +02:00 |
|
edde746
|
d6b47f9d51
|
fix(windows): suppress Steam Input duplicate actions
|
2026-04-26 20:46:25 +02:00 |
|
edde746
|
19a0128363
|
feat(playback): add ArtCNN shader presets
close #924
|
2026-04-26 20:29:38 +02:00 |
|
edde746
|
3433dcb21c
|
fix(downloads): clean up stale SAF target file before re-enqueue
|
2026-04-26 19:15:06 +02:00 |
|
edde746
|
62e3cbcfd0
|
fix(playback): chain adjacent-episode load behind play queue
|
2026-04-26 18:44:35 +02:00 |
|
edde746
|
4688e1eb5e
|
style: wrap long if-condition flagged by dart format
|
2026-04-26 18:44:35 +02:00 |
|
edde746
|
f5e0e8c8b5
|
feat(settings): add "Start in fullscreen" option on Windows/Linux
close #923
|
2026-04-26 18:12:30 +02:00 |
|
edde746
|
8c8fc13baf
|
fix(playback): skip deleted/inaccessible Plex media versions before play
close #919
|
2026-04-26 18:12:30 +02:00 |
|
edde746
|
a9a8fa388e
|
Merge pull request #925 from crtdll/main
fix(windows): fixed black screen while navigating between videos in full screen
|
2026-04-26 18:05:07 +02:00 |
|
edde746
|
425da3ab7d
|
fix(overlay-sheet): wrap barrier in Positioned.fill
|
2026-04-25 19:59:36 +02:00 |
|
edde746
|
7aaa373bdf
|
revert: desktop image eviction threshold to 1.5GB
|
2026-04-25 17:12:17 +02:00 |
|
edde746
|
23d958fac8
|
fix(downloads): guard ensureAbsolutePath against RangeError on short paths
|
2026-04-25 14:10:37 +02:00 |
|
edde746
|
e61f0002e5
|
test: episode nav, track selection, play queue, more mixins
|
2026-04-25 13:54:08 +02:00 |
|
edde746
|
303bd406c2
|
test: watch_together provider, more mixins, services, utils
|
2026-04-25 13:44:15 +02:00 |
|
edde746
|
ce7e936931
|
test: complex provider, mixin, and service tests
|
2026-04-25 13:29:48 +02:00 |
|
edde746
|
f049c65623
|
test: provider/mixin/service tests + visibleForTesting reset hooks
|
2026-04-25 13:15:01 +02:00 |
|
edde746
|
7f8c066062
|
test: add provider and drift database tests
|
2026-04-25 13:04:08 +02:00 |
|
edde746
|
edff1f29db
|
test: scaffolding + first provider test (hidden_libraries)
|
2026-04-25 12:56:38 +02:00 |
|
edde746
|
87696d77d1
|
refactor(models): json_serializable for 9 manual fromJson models
|
2026-04-25 12:52:43 +02:00 |
|
edde746
|
0dbcda25e7
|
refactor(models): json_serializable for plex_filter
|
2026-04-25 12:45:54 +02:00 |
|
edde746
|
ebbcc60e13
|
perf(screens): cache Theme.of in hot media detail/discover paths
|
2026-04-25 12:44:15 +02:00 |
|
edde746
|
1ce561a1ad
|
perf(images): add memCacheHeight to direct CachedNetworkImage sites
|
2026-04-25 12:37:41 +02:00 |
|
edde746
|
c36fee17dd
|
refactor(providers): apply DisposableChangeNotifierMixin to 11 providers
|
2026-04-25 12:35:52 +02:00 |
|
edde746
|
eeed34e2df
|
perf(folder-tree): use ListView.builder for lazy row build
|
2026-04-25 12:32:23 +02:00 |
|
edde746
|
52b70a0080
|
perf(mediaquery): use scoped accessors (sizeOf, paddingOf, etc.)
|
2026-04-25 12:30:53 +02:00 |
|
edde746
|
feba5b6f74
|
lint: enforce unawaited_futures, prefer_final_locals, etc.
|
2026-04-25 12:27:28 +02:00 |
|
edde746
|
c2cd2dea37
|
perf: cap hero decode, lower desktop image eviction threshold
|
2026-04-25 11:59:56 +02:00 |
|
edde746
|
5d87c6808d
|
refactor(prefs): route services through sharedCache
|
2026-04-25 11:13:12 +02:00 |
|
edde746
|
0531c33b0c
|
refactor(settings): typed Pref<T> declarations
|
2026-04-25 10:52:34 +02:00 |
|
edde746
|
e4e8299981
|
refactor: showLoadingDialog helper, json_serializable for plex_home
|
2026-04-25 03:25:09 +02:00 |
|
edde746
|
d0a93d57dd
|
refactor: codebase review cleanup
|
2026-04-25 03:16:11 +02:00 |
|
edde746
|
1949c22b85
|
fix(trackers): dialog cancel pops screen behind
|
2026-04-24 23:32:13 +02:00 |
|
edde746
|
3a69e49ab8
|
perf: parallelize playback startup
|
2026-04-24 23:20:31 +02:00 |
|
edde746
|
df94e83592
|
fix(trackers): cancel connect immediately
|
2026-04-24 20:54:38 +02:00 |
|
edde746
|
1de91a598c
|
refactor(tvos): cleanup
|
2026-04-24 20:21:30 +02:00 |
|
edde746
|
49a86e402c
|
fix: stabilize grid column count when alpha bar shows
|
2026-04-24 19:19:39 +02:00 |
|
edde746
|
3d023962e1
|
feat: server grouping, hidden-library browsing
close #557, close #827
|
2026-04-24 19:11:25 +02:00 |
|
edde746
|
a13cfedbce
|
fix(tvos): app store builds
|
2026-04-24 17:35:22 +02:00 |
|
edde746
|
2b59de91c7
|
chore: dart format
|
2026-04-24 14:19:07 +02:00 |
|
edde746
|
2479e1faaa
|
feat: tvos support
|
2026-04-24 14:11:24 +02:00 |
|
edde746
|
77401bef32
|
fix(android): saf download deletion
|
2026-04-24 13:07:06 +02:00 |
|
edde746
|
e961bc6293
|
refactor: share tracker/trakt auth and connect flow
|
2026-04-24 12:32:25 +02:00 |
|
edde746
|
bf2584d90f
|
feat: per-tracker library whitelist/blacklist
close #917
|
2026-04-24 10:30:16 +02:00 |
|
edde746
|
e8729a4e27
|
feat: oauth proxy for mal/anilist auth
|
2026-04-24 09:46:45 +02:00 |
|
edde746
|
1582fdbd5b
|
feat: mal/anilist/simkl progress sync
close #914
|
2026-04-24 08:29:49 +02:00 |
|
edde746
|
431c20f817
|
feat: match/unmatch metadata
|
2026-04-23 19:02:14 +02:00 |
|
edde746
|
4a5cb224b1
|
feat: swap chapters/queue player icons
|
2026-04-23 18:26:03 +02:00 |
|
edde746
|
d5d9da046e
|
feat: toggle auto update check on startup
close #913
|
2026-04-23 18:06:27 +02:00 |
|
edde746
|
0c6796ebe7
|
fix: desktop double-click fullscreen full area
|
2026-04-23 15:25:38 +02:00 |
|
edde746
|
d73b9182cc
|
fix: stable image cache key across window resize
|
2026-04-23 13:58:25 +02:00 |
|
edde746
|
39bcd9b943
|
feat(android): flutter surfaceview rendering
|
2026-04-23 10:10:34 +02:00 |
|
edde746
|
ca5d87143b
|
feat: global fullscreen toggle (F11 + sidebar)
close #907
|
2026-04-23 07:43:46 +02:00 |
|
edde746
|
1e54344ec3
|
feat: toggle episode number on cards
|
2026-04-22 21:35:03 +02:00 |
|
edde746
|
c10cf55f2d
|
feat: transcoding
|
2026-04-22 21:07:12 +02:00 |
|
edde746
|
05aeee1124
|
test(server): relay integration coverage
|
2026-04-22 15:24:34 +02:00 |
|
edde746
|
74c6af2980
|
feat(server): persist rooms across restarts
|
2026-04-22 14:57:41 +02:00 |
|
edde746
|
0883fe2e36
|
chore(server): tune bugs memory limits
|
2026-04-22 14:29:36 +02:00 |
|
edde746
|
e95475f845
|
feat(sentry): symbol upload and hang tracking
|
2026-04-22 12:44:37 +02:00 |
|
edde746
|
b2cd0c2c37
|
fix: retry live tv tune, clamp timeline duration
|
2026-04-22 08:45:02 +02:00 |
|
edde746
|
06b3c9645c
|
test: assert dispose completer fires
|
2026-04-22 02:44:54 +02:00 |
|
edde746
|
557ef69697
|
fix: guard setState/context against disposed widget
|
2026-04-21 22:29:57 +02:00 |
|
edde746
|
eb49ead83b
|
fix: paginate collection/playlist/person endpoints
close #903
|
2026-04-21 21:51:20 +02:00 |
|
edde746
|
e2be6a0093
|
chore: remove jscpd and sonarqube
|
2026-04-21 20:26:19 +02:00 |
|
edde746
|
d4235a286a
|
test: unit tests for utils, models, settings mpv parser
|
2026-04-21 20:09:58 +02:00 |
|
edde746
|
fd701e5d1f
|
fix: restrict failover to working endpoint network class
close #902
|
2026-04-21 19:20:57 +02:00 |
|
edde746
|
e6c1923b0e
|
refactor(exoplayer): drop duplicated mpv box-fit translation
|
2026-04-21 18:23:46 +02:00 |
|
edde746
|
839465b7f2
|
feat(exoplayer): box-fit modes (letterbox/cover/stretch)
|
2026-04-21 18:17:25 +02:00 |
|
edde746
|
7c331e51e6
|
fix: auto-skip credits honors auto-play-next
close #901
|
2026-04-21 17:37:31 +02:00 |
|
edde746
|
775998466d
|
i18n: rename audio normalization to normalize loudness
close #896
|
2026-04-21 17:35:18 +02:00 |
|
edde746
|
ee020d81bd
|
refactor: trakt/download hardening and cleanup sweep
|
2026-04-21 13:57:03 +02:00 |
|
edde746
|
93d196572f
|
fix: clamp playlist focus index on remove
|
2026-04-21 12:36:15 +02:00 |
|
edde746
|
f69068eb63
|
feat(db): index DownloadedMedia hot columns
|
2026-04-21 12:05:50 +02:00 |
|
edde746
|
1edf3da984
|
refactor: consolidate dialogs to DialogActionButton
|
2026-04-21 12:05:21 +02:00 |
|
edde746
|
4665f2a5d8
|
fix: dispose services and subscriptions, persist client id
|
2026-04-21 12:04:48 +02:00 |
|
edde746
|
fd898e0567
|
fix: json parse safety, stop mutating input maps
|
2026-04-21 12:03:32 +02:00 |
|
edde746
|
48ba923f47
|
chore: bump mpvkit and libmpv-android
|
2026-04-21 10:39:24 +02:00 |
|
edde746
|
e1c9ce6f71
|
fix: gate http fallback for hostname https, throw on non-2xx in failover
close #900
|
2026-04-21 08:39:28 +02:00 |
|
edde746
|
5937e5c721
|
refactor: extract shared mixins and helpers to dedupe
|
2026-04-20 21:25:50 +02:00 |
|
edde746
|
3b7b532a8d
|
fix: exclude trakt keys from settings export
|
2026-04-20 21:17:00 +02:00 |
|
edde746
|
bc57ffb930
|
feat: export/import settings
|
2026-04-20 20:17:57 +02:00 |
|
edde746
|
1fd415ae31
|
feat(android): display switch delay
close #894
|
2026-04-20 17:34:54 +02:00 |
|
edde746
|
6d265e7bae
|
feat: episode next/prev hotkeys
close #897
|
2026-04-20 16:34:46 +02:00 |
|