Commit Graph

2666 Commits

Author SHA1 Message Date
schroda
0b79f1f82a Extract reader exit button 2025-02-17 03:56:40 +01:00
schroda
95fa09a94a Extract reader bookmark button 2025-02-17 03:51:07 +01:00
schroda
ca7fba0757 Add library button to "ReaderOverlayHeaderMobile" 2025-02-17 03:45:50 +01:00
schroda
c52a822a23 Increase allowed issue title length 2025-02-17 03:30:07 +01:00
schroda
419181efa9 Add add/remove to/from library button to reader desktop quick actions 2025-02-17 03:26:44 +01:00
schroda
09ff0f3ca0 Set i18n supported languages 2025-02-17 03:07:20 +01:00
schroda
1ae98afa34 Move scripts into separate folders 2025-02-17 02:57:17 +01:00
schroda
0a34ae01ba Require languages to be at least 75% translated 2025-02-17 02:57:16 +01:00
schroda
5dcbf6c168 Extract weblate types, constants, logic 2025-02-17 02:10:14 +01:00
schroda
f39c902b5f Update dependencies 2025-02-17 01:12:56 +01:00
schroda
10ad7ce5d7 Fix marking chapter as read for single page chapters in paged pagers
Regression from 174d850093
2025-02-17 01:12:56 +01:00
schroda
cc7eca08d7 Handle closing transition pages in paged pagers for single page chapters
In case a chapter only has a single page and the previous/next transition page was visible, it was not possible to go back to the chapters page, since it just opened the previous/next chapter instead
2025-02-17 01:12:55 +01:00
Hosted Weblate
68603cf59e Translations update from Hosted Weblate
Co-authored-by: Ayoub <rahaliayoub28@gmail.com>
Co-authored-by: Demax TV <max0965053649@gmail.com>
Co-authored-by: Fordas <fordas15@gmail.com>
Co-authored-by: Henrique <heluis110@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: Nguyễn Trung Đức <vaicato16@gmail.com>
Co-authored-by: lengzero <lengansong@gmail.com>
Co-authored-by: plum7x <plumgift@hotmail.com>
Co-authored-by: tizio04 <dp2104@gmail.com>
Co-authored-by: zeedif <carlos_antonio-rl@hotmail.com>
Co-authored-by: 清水汐音 <chenzhongjie19940725@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/ar/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/es/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/it/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/pt/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/th/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/vi/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hant/
Translation: Suwayomi/Suwayomi-WebUI
2025-02-16 23:13:28 +01:00
schroda
c5b7e89fb4 Ensure to always have one page in reader
Reapplies if from 2c4a17b32f

Regression from 4a9d2903b8
2025-02-12 20:43:45 +01:00
schroda
ffd6c5867f Fix "coerceIn" for calls with max < min
Previously the min value was ignored in case the max value was less than the min value.
E.g. coerceIn(5, 0, -1) would be -1 instead of 0
2025-02-12 19:55:46 +01:00
schroda
c6fe715e57 Handle faulty "lastPageRead" values
There seems to be a bug on the server which sets the "lastPageRead" of a chapter to -1 which should not happen
2025-02-12 19:40:43 +01:00
schroda
2537f10729 Update "Ying & Yang" light theme background colors 2025-02-11 15:12:35 +01:00
schroda
cbe6cb64f7 Lighten automatic light theme background colors 2025-02-11 15:11:53 +01:00
schroda
86cf8d1c12 Use different algorithm for dynamic themes on manga page 2025-02-11 15:01:57 +01:00
schroda
856e928c44 Fix chapter preloading after chapter selection from list
When a chapter gets opened via the chapter list in the reader, the visible chapter state gets reset.
The problem was that after this happened, the passed location state did not get reset and the "visible chapter state" constantly got reset everytime the state of a chapter changed
2025-02-11 02:09:28 +01:00
schroda
7e5b3435a9 Fix page centering in paged pagers with preloaded chapters
The previous/next chapter wasn't visible but had a margin which affected the positioning of the visible pages
2025-02-11 02:06:49 +01:00
schroda
ca7bd6898e Prevent horizontal scrollbar in snackbar 2025-02-10 23:26:33 +01:00
schroda
94b4bdfa10 Reduce snackbar description length 2025-02-10 23:23:40 +01:00
schroda
a45338647e Fix infinite scroll intersection info calculation
Scrollbars need to be considered since they decrease the available viewport size in which the element can be visible
2025-02-10 22:40:53 +01:00
schroda
eb7397e639 Fix reader image preload for resume "end" mode
In this case the preload direction was incorrect and tried to preload trailing images instead of leading ones
2025-02-10 22:40:52 +01:00
schroda
6b48844c19 Fix current page index for leading/trailing chapter 2025-02-10 22:40:50 +01:00
schroda
174d850093 Preload previous/next chapter in reader 2025-02-10 22:40:49 +01:00
schroda
16c1edaa52 Add release changelog creation script 2025-02-10 00:14:06 +01:00
schroda
61bbadc72a Extract commit changelog creation logic 2025-02-10 00:14:03 +01:00
schroda
7a08a0035f Extract translation changelog creation logic 2025-02-10 00:13:17 +01:00
schroda
a6dbcd0540 Rename "createReleaseChangelog" to "createCommitChangelog" 2025-02-09 23:22:37 +01:00
schroda
d8a682537a Fix "createReleaseChangelog" script 2025-02-09 23:19:51 +01:00
schroda
ece1f4c465 Create "release" github action 2025-02-09 23:09:00 +01:00
schroda
0b752c168c Internationalize system theme mode 2025-02-09 23:06:44 +01:00
schroda
a7df8eb0f4 Show image loading placeholder only when visible
The MUI spinner impacts the cpu usage.
While only a few of them don't matter, rendering multiple of them can impact the cpu usage.

This can be a problem in the reader in case a chapter with a lot of chapters is rendered and a continuous reading mode is being used.
In such a case the cpu usage stays increased until all pages have been loaded
2025-02-08 20:12:41 +01:00
schroda
a4e9e8f264 Introduce "useIntersectionObserver" hook 2025-02-08 19:45:41 +01:00
schroda
050094c991 Update styling of "manga open source" button 2025-02-08 16:16:32 +01:00
schroda
f633059083 Rename "CustomIconButton" to "CustomButton" 2025-02-08 16:03:37 +01:00
schroda
cae52fd782 Add "blend mode" to "custom color filter" 2025-02-08 01:49:37 +01:00
schroda
9d3aeafe0e Use "BasePager" for infinite scroll chapter change detection
There can be cases where when scrolling backward/forward the first/last page never gets visible in the viewport due to a large width/height of another page.
In that case the intersection observer would never trigger and thus, the chapter wouldn't get changed.

By using the Pager, which always takes up the full width/height, this problem will not be possible, since the start/end of the Pager always enters or leaves the viewport.
2025-02-05 22:25:35 +01:00
schroda
b12e28346c Improve reader infinite scroll chapter change detection
A 10% intersection threshold does not work for pages that are so long that 10% of the page will never be in the viewport
2025-02-05 21:23:20 +01:00
schroda
187693ce5a Properly handle not skipping duplicate chapters
The filtered chapter list of the reader state always incorrectly filtered out duplicated chapters even while the setting was disabled
2025-02-05 20:05:36 +01:00
schroda
a32c88a549 Reset "ReaderChapterViewer" min width/height on "ReadingMode" change 2025-02-05 15:48:55 +01:00
schroda
5e8b5545a6 Add comments to functions 2025-02-05 15:26:40 +01:00
schroda
34ebcc4f4c Improve naming of functions and variables 2025-02-05 15:17:48 +01:00
schroda
155f58b92d Consider only relevant element intersection for open prev/next chapter
In the "vertical mode" intersection changes for the left or right side of the element do not matter.
Same for "horizontal mode" the other way around.

If not handled accordingly, it would cause unwanted chapter changes.
2025-02-05 15:17:46 +01:00
schroda
9b58a94f98 Fix image preload amount for current chapter
For the current chapter the "pages to render" always include the current page
2025-02-05 01:27:42 +01:00
schroda
19f2d99345 Center "ReaderChapterViewers"
The viewers can have different sizes which caused theme to not be properly centered.

E.g. for the "vertical mode" in case "chapter 1" is greater in width than "chapter 2", the pages of "chapter 2" were not correctly centered due to the "viewers" having different widths.
2025-02-05 00:34:44 +01:00
schroda
636f48107f Prevent "ReaderChapterViewer" from overlapping each other
Seems like not all browsers handle

width/height: 100%
min-width/min-height: fit-content

correctly.
the "min" setting just never applies and the size is stuck at 100%.
2025-02-04 23:11:34 +01:00
schroda
36cb545156 Properly detect scrollbar for mouse drag scrolling 2025-02-04 22:35:01 +01:00