Commit Graph
87 Commits
Author SHA1 Message Date
schroda ea31889969 Fix leading page scroll preservation in continuous horizontal mode with RTL mode 2026-04-13 16:13:24 +02:00
schroda 6131b99169 Disable scroll preservation on infinite scroll initial render if diabled 2026-04-13 14:57:47 +02:00
schroda ebac415b09 Fix tapzone opening previous/next chapter in continuous horizontal mode with inverted reading direction
The logic to detect if the horizontal scroll position was at the start or end of the element was not correct in case the readers reading direction was inverted compared to the browser themes reading direction.

example:
- theme ltr + reader ltr => worked
- theme ltr + reader rtl => broken
- theme rtl + reader ltr => broken
- theme rtl + reader rtl => worked
2026-04-13 14:56:12 +02:00
schroda 6d41639928 Fix reader transition page previous chapter scanlator name 2026-03-21 00:32:00 +01:00
schroda 519ff43b67 Use stable array/object constants II 2026-03-20 03:36:57 +01:00
schroda 9ce273b5ce Use stable array/object constants 2026-03-20 03:02:52 +01:00
schroda 54086f1c30 Fix changing reader settings from desktop quick settings
Regression 63ebfd120e
2026-03-15 14:43:40 +01:00
schroda 32fb7b0909 Fix deleting global reader settings
It replaced the global settings with the manga specific ones.

Regression 63ebfd120e
2026-03-15 14:42:49 +01:00
schroda 7de1723b36 Fix updating global reader settings
It replaced the global settings with the manga specific ones.

Regression 63ebfd120e
2026-03-15 14:33:57 +01:00
schroda 1cccd1ea46 Simplify selecting zustand store state 2026-03-11 23:31:51 +01:00
schroda 72af9d52d1 Update lint rules 2026-03-11 19:42:02 +01:00
schroda 5dda4304d9 Migrate to oxlint + oxfmt 2026-03-11 19:41:49 +01:00
schroda 22e1b6d224 Update dependency "eslint" to v9.x
v9.39.4
2026-03-10 21:41:50 +01:00
schroda f549658dfa Update dependencies 2026-03-09 01:13:34 +01:00
schroda 63ebfd120e Fix saving long metadata values
fixes #900
2026-03-08 22:42:36 +01:00
schroda 64df9a9489 Add new single multipurpose metadata update mutation 2026-03-08 22:40:47 +01:00
schroda 474b98abb5 Use new "metas" mutations 2026-03-08 22:40:45 +01:00
schroda 41fe42f29b Fix "auto webtoon mode" detection
The detection didn't work properly in case the selected manga was in a different language than English or the current active translation.
In that case it didn't work because the translation for that locale wasn't loaded.

So to ensure that the translation exists for each language, we have to hardcode it.
2026-02-21 22:20:22 +01:00
schroda 576cf85c38 Cleanup reader store slices hooks 2026-02-21 17:33:13 +01:00
schroda daeb2a4e45 Access reader store setters directly without hook 2026-02-21 16:41:56 +01:00
schroda 75cf18b254 Rename "getNextIndexFromPage" to "getIndexOfPage" 2026-02-21 15:15:47 +01:00
schroda 4da2f67b75 Fix page shift when toggling "offset double spreads" setting
The pages should get shifted to
- the left when enabling
- the right when disabling
the setting.

Currently, the "page push" is inverted.
This can cause the page that is most likely being read to get pushed out of the screen. Which then requires the user to change the page.

Example:

Active page: 1+2
Enable setting: -> 2 (currently) instead of -> 1
2026-02-21 15:15:47 +01:00
schroda ec49cd1ad9 Fix updating reader "page urls" in "page store"
The page urls never got updated in the store
2026-02-21 15:15:45 +01:00
schroda ddca11e537 Prevent potential out-of-bound index access when selecting reader page 2026-02-21 15:15:06 +01:00
schroda 95ccdad275 Align "offset spread pages" hotkey text with setting 2026-02-21 15:15:04 +01:00
schroda 8a7081fdba Fix missing "offset double spreads" setting under "settings > reader" 2026-02-21 15:12:34 +01:00
schroda 65a9a905be Migrate to lingui
Switch to "lingui" for better DX.
Tried to persist existing languages as much as possible.

Removed "vite-plugin-node-polyfills" because it's incompatible with "lingui"
2026-01-13 17:33:36 +01:00
schroda 083586c567 Update graphql files structure 2025-12-22 14:00:44 +01:00
schroda 13d6d1e525 Revert "Reduce rerenders on current page changes"
This reverts commit 3e9078420a.

Fixes #1040
2025-12-02 21:51:51 +01:00
schroda 9646aa2caf Fix reader progress bar size setting slider max value 2025-11-30 18:44:23 +01:00
schroda 3e9078420a Reduce rerenders on current page changes
The chapters state always created a new array reference which caused potential unnecessary rerenders.
2025-11-29 16:23:45 +01:00
schroda 3d8a81bc5d Reduce rerenders of reader desktop nav bar 2025-11-29 15:26:57 +01:00
schroda b5d71adeae Prevent reader progressbar tooltips on mobile 2025-11-28 23:30:10 +01:00
schroda 860b00a0b5 Prevent reader progressbar tap highlighting on mobile 2025-11-28 23:29:51 +01:00
schroda 3dcdca7166 Reduce image rerenders in continuous reading modes on page change
In continuous reading modes the pages are always rendered regardless of if they are visible or not. This is the case to prevent layout shifts when prepending pages while scrolling up.

However, this means that a pages "load priority" and its "should load" flag changes everytime the current page changes, which causes unnecessary rerenders.
The "load priority" and "should load" flag do not matter once a page has been loaded and therefore should stay consistent once loaded.
2025-11-28 23:09:36 +01:00
schroda d0735365ff Fix first visible page detection
50a6b72716 did not properly fix the detection and broke it for other reader settings.
2025-11-27 02:38:09 +01:00
schroda fe4bfd922e Queue image requests per source
If http protocol is h2 or newer, allow:
 - 5 requests per source
 - unlimited local source requests
2025-11-23 00:08:23 +01:00
schroda 704d3b191f Flag event listeners as passive 2025-11-22 19:14:43 +01:00
schroda 48b57c4a74 Simplify reader visible page detection 2025-11-17 02:19:36 +01:00
schroda 36477d1c95 Simplify scroll page into view inline alignment determination 2025-11-17 01:37:32 +01:00
schroda 50a6b72716 Fix first visible page detection in RTL + continuous horizontal mode 2025-11-17 01:24:58 +01:00
schroda d093fe0281 Prevent default action on hotkey by default 2025-11-16 22:32:18 +01:00
schroda 64d5f3b8e1 Fix preserving current page on "reader width" change
Preservation triggered on every setting change because the object instance changed
2025-11-16 22:26:06 +01:00
schroda bab55bafdb Preserve reader current page on "reader width" change 2025-11-13 01:35:46 +01:00
schroda 7b89fa10c5 Fix reader current page preservation on window resize 2025-11-13 01:35:46 +01:00
schroda 2510d11888 Preserve reader current page on "page scale" setting change 2025-11-13 01:35:45 +01:00
schroda 197d55f819 Rename "useReaderHorizontalModeInvertXYScrolling" to reflect actual behavior
The Y scroll direction gets mapped to the X direction. And the horizontal direction gets inverted based on the reading direction.
2025-11-13 01:35:45 +01:00
schroda 88f1ef7384 Improve reader horizontal mode scroll Y to X re-mapping
When scrolling really fast, the delta value could increase, which leads to incorrect trackpad detection, because the delta value is not consistent over consecutive scroll events
2025-11-13 01:35:44 +01:00
schroda 02621dec98 Introduce "awaitable-component" 2025-11-03 21:45:53 +01:00
schroda f539afb404 Introduce "koration" duration api 2025-10-14 21:14:52 +02:00