Commit Graph

16 Commits

Author SHA1 Message Date
Gauvain
bd5b95c835 fix(library): per-library filter memory + reset-to-top, reset on app close
Genre/year/tag filters lived in global atoms with no per-library memory and
no reset on library switch, so a selection in one library (e.g. Anime) bled
into another (e.g. Shows). Sort/order/filterBy were already per-library but
persisted across app restarts.

Move all per-library filter state to in-memory preferences — genres/years/tags
get their own, and sort/order/filterBy stop using atomWithStorage: each library
remembers its own filters for the session and everything resets when the app is
fully closed. The library mount effect restores the active library's selection,
the shared useFilterReset clears it, and collections open with a clean slate.

Also fix the grid not returning to the top on a filter/sort change or reset:
it now pins to the top instantly and re-pins once the filtered fetch settles
(FlashList was restoring the previous offset as the new content grew);
pagination is left untouched.
2026-06-25 00:32:59 +02:00
Gauvain
d397233991 fix(filters): memoize useFilterOptions and drop debug logging
The hook returned a fresh array on every render (and console.logged
it). The unstable identity cascaded into list-header re-creation and,
under heavy re-rendering, tripped React maximum-update-depth.
2026-06-11 00:42:54 +02:00
Fredrik Burmester
74d86b5d12 feat: KSPlayer as an option for iOS + other improvements (#1266) 2026-01-03 13:05:50 +01:00
Fredrik Burmester
485dc6eeac feat: Expo 54 (new arch) support + new in-house download module (#1174)
Signed-off-by: Lance Chant <13349722+lancechant@users.noreply.github.com>
Co-authored-by: sarendsen <coding-mosses0z@icloud.com>
Co-authored-by: Lance Chant <13349722+lancechant@users.noreply.github.com>
Co-authored-by: Gauvain <68083474+Gauvino@users.noreply.github.com>
2025-11-11 08:53:23 +01:00
Alex
53b43edc2a Revert "fix: Recently Added isn't updating correctly." (#852)
Some checks failed
🤖 Android APK Build / 🏗️ Build Android APK (push) Has been cancelled
🤖 iOS IPA Build / 🏗️ Build iOS IPA (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (javascript-typescript) (push) Has been cancelled
🏷️🔀Merge Conflict Labeler / 🏷️ Labeling Merge Conflicts (push) Has been cancelled
2025-07-13 04:47:26 +10:00
Sim
1b812ebed5 fix: Recently Added isn't updating correctly. (#686) 2025-06-02 13:21:50 +02:00
lostb1t
92513e234f chore: Apply linting rules and add git hok (#611)
Co-authored-by: Fredrik Burmester <fredrik.burmester@gmail.com>
2025-03-16 18:01:12 +01:00
Fredrik Burmester
93d117640a fix: change to mmkv and fix downloads with VLC 2024-11-24 19:34:49 +01:00
Fredrik Burmester
cdc3be41c1 fix: preserve sort order per library/collection
fixes #84
2024-09-04 22:49:43 +03:00
Fredrik Burmester
61cb205f93 fix: refactor to use enums 2024-08-30 12:54:31 +02:00
sarendsen
30678813b4 feat: Add Default option and use collection sorting as default 2024-08-30 09:58:50 +02:00
lostb1t
f863c95f70 Disable bitrate filter 2024-08-21 18:00:06 +02:00
lostb1t
f227565dbf Use DateCreate for sorting last added 2024-08-21 17:58:42 +02:00
Fredrik Burmester
d56bb79ac2 feat: filters with bottom sheet 2024-08-17 23:34:51 +02:00
Fredrik Burmester
30781a6dfe wip: refactor 2024-08-17 19:11:42 +02:00
Fredrik Burmester
26050f7179 feat: library page 2024-08-17 13:14:33 +02:00