edde746
|
d93ea9813f
|
fix(playback): harden offline source reporting
|
2026-05-29 19:55:01 +02:00 |
|
edde746
|
7501f461b9
|
fix(playback): sync downloaded watch progress
close #1171, close #1183
|
2026-05-29 19:55:01 +02:00 |
|
edde746
|
eeaa831cc2
|
fix(search): guard stale refresh callbacks
|
2026-05-24 07:37:02 +02:00 |
|
edde746
|
0383a77b56
|
fix(jellyfin): pin version playback source
|
2026-05-19 20:12:19 +02:00 |
|
edde746
|
ed4be7b96d
|
refactor: strip obvious comments
|
2026-05-04 22:40:18 +02:00 |
|
edde746
|
31d2d9dc98
|
feat: jellyfin
|
2026-05-01 01:20:36 +02:00 |
|
edde746
|
0531c33b0c
|
refactor(settings): typed Pref<T> declarations
|
2026-04-25 10:52:34 +02:00 |
|
edde746
|
c10cf55f2d
|
feat: transcoding
|
2026-04-22 21:07:12 +02:00 |
|
edde746
|
beff4f9ca0
|
feat: add watch together playback rejoin flow
close #639
|
2026-03-06 20:42:18 +01:00 |
|
edde746
|
13b5d7bae8
|
feat: secondary subtitle tracks
close #625
|
2026-03-04 09:35:36 +01:00 |
|
edde746
|
e23f472d78
|
refactor: centralize globalKey construction via buildGlobalKey()
|
2026-02-23 17:53:20 +01:00 |
|
edde746
|
8f50da4a75
|
fix: resolve all dart analyze warnings
- Migrate RadioListTile to RadioGroup API (Flutter 3.32+)
- Guard BuildContext usage across async gaps
- Use const BorderRadius.all / EdgeInsets.all constructors
- Extract nested ternaries into helpers
- Prefer .first over [0], ??= over if-null assignment
- Prefix unused FocusNode params with _
- Add library directive for dangling doc comments
|
2026-02-23 13:50:56 +01:00 |
|
edde746
|
4095cc27e1
|
perf: reduce redundant metadata API requests
|
2026-02-23 11:43:42 +01:00 |
|
edde746
|
04438c8e45
|
refactor: code quality & format
|
2026-02-15 04:07:09 +01:00 |
|
edde746
|
86a989a2f2
|
fix: open downloaded videos in external player on Android
|
2026-02-14 18:26:05 +01:00 |
|
edde746
|
03907db6c4
|
feat: external player support
close #388
|
2026-02-11 14:59:52 +01:00 |
|
edde746
|
045502405d
|
feat: persist playback speed
close #237
|
2026-01-15 00:16:17 +01:00 |
|
edde746
|
ab915d0258
|
refactor: fix warnings
|
2025-12-18 12:04:36 +01:00 |
|
edde746
|
63ba2bb3de
|
feat: watch together
|
2025-12-18 08:42:18 +01:00 |
|
edde746
|
3c89d0eba8
|
refactor: update formatting
|
2025-12-15 02:29:03 +01:00 |
|
edde746
|
a2a5a5ae55
|
refactor: simplify & deduplicate
|
2025-12-14 21:03:11 +01:00 |
|
edde746
|
dc44354036
|
feat: downloads
|
2025-12-12 02:59:27 +01:00 |
|
edde746
|
6d9a56fa73
|
refactor: fix naming
|
2025-12-02 16:53:54 +01:00 |
|
edde746
|
d9cdde66d8
|
macos
|
2025-12-02 15:46:19 +01:00 |
|
Doezer
|
3366ed02f5
|
Ran dart format using this pwsh command
$FILES = Get-ChildItem -Path lib, test -Recurse -Filter "*.dart" -File -ErrorAction SilentlyContinue | Where-Object { $_.Name -notmatch '\.(g|freezed)\.dart$' } | Select-Object -ExpandProperty FullName; if (-not $FILES) { Write-Host "No Dart files found to format"; exit 0 } else { dart format --output=write --set-exit-if-changed $FILES }
|
2025-11-13 22:53:31 +01:00 |
|
edde746
|
844965e051
|
refactor: fix warnings
|
2025-11-05 11:03:35 +01:00 |
|
edde746
|
65057750f7
|
feat: file version picker
|
2025-11-04 10:28:37 +01:00 |
|
edde746
|
26e7dba0d0
|
fix: plex track preference
|
2025-11-01 12:12:16 +01:00 |
|
edde746
|
127500329b
|
refactor: remove player navigation animation
|
2025-11-01 09:28:47 +01:00 |
|