Commit Graph

97 Commits

Author SHA1 Message Date
schroda
1a0814e14a Remove unintentional "safeAreaInset" reader setting state selection
Causes unnecessary rerenders and therefore gets selected in a separate state hook call.
This selection was unintentionally merged
2026-05-09 00:02:26 +02:00
schroda
d1e70c2609 Add "safe area inset" setting to reader 2026-05-08 01:58:06 +02:00
schroda
d4fd09294d Respect device safe area inset in reader
closes #1094
2026-05-05 13:42:38 +02:00
schroda
00bba202ef Remove enabling notifyOnNetworkStatusChange usages
Starting with v4 this flag is now enabled by default
2026-05-02 17:37:38 +02:00
schroda
89e0b0761e Fix reader page transition text color
Regression f95b0c8bcc
2026-04-26 14:30:54 +02:00
schroda
f95b0c8bcc Update dependency mui to v9.x 2026-04-25 23:46:03 +02:00
schroda
8155bd6906 Update dependencies 2026-04-25 16:10:51 +02:00
schroda
323222d0f2 Fix scroll jump on chapter resume with continuous horizontal mode 2026-04-13 18:16:12 +02:00
schroda
9595076dae Fix reader progress bar current page slot positioning for single page chapters
Was only noticeable in the mobile reader ui because the desktop one hides this component and uses its own logic.
It resulted in the previous/next button not being clickable because the current page component was overlaying it
2026-04-13 18:03:56 +02:00
schroda
684c9c3733 Improve scroll preservation data naming 2026-04-13 16:13:24 +02:00
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