Commit Graph
100 Commits
Author SHA1 Message Date
schroda 771feca797 [skip ci] Fix "bug report" template 2025-03-20 00:39:01 +01:00
schroda 15788e01c6 Remove "issue moderator" workflow 2025-03-20 00:30:57 +01:00
schroda 97b37d3957 Update github issue templates 2025-03-20 00:30:53 +01:00
schroda 3ca4aa2eff Remove "Settings" from setting page titles 2025-03-17 12:07:02 +01:00
schroda 90c1d72d13 Sort "en.json" alphabetically 2025-03-17 12:07:00 +01:00
schroda 2fead95c15 Change downloads settings name back to "Downloads" 2025-03-17 12:06:58 +01:00
schroda 180b975063 Add missing error message to create/update category mutation 2025-03-16 23:25:06 +01:00
schroda a2acddab5f Show tooltip for metadata on ChapterCards
Text that was too long got cut of, but it was never shown as the tooltip, which caused the information about the full text to get lost
2025-03-10 23:31:50 +01:00
schroda efd9a45912 Properly resume chapter from "Updates" page 2025-03-10 23:24:29 +01:00
schroda 003e77ade2 Extract "retry chapter download" button into component 2025-03-10 23:24:26 +01:00
schroda 6f6994a433 Extract "add chapter download" button into component 2025-03-10 23:24:06 +01:00
schroda 35c2172355 Extract "chapter metadata" into component 2025-03-10 22:59:21 +01:00
schroda ac4bdebb61 Extract "chapter thumbnail" into component 2025-03-10 22:20:46 +01:00
schroda 50493af71c Use correct error message for download retry failure 2025-03-10 22:01:30 +01:00
schroda 61eec0cd0e Add "last read timestamp" to history chapter card 2025-03-10 22:01:29 +01:00
schroda c7611e4ae1 Remove unnecessary virtuoso "group item counts" mapping 2025-03-10 21:58:13 +01:00
schroda e9b42db10f Add "groupByDate" to "Chapters" 2025-03-10 21:58:11 +01:00
schroda 86525ec2a2 Fix library category tabs after re-ordering categories 2025-03-10 21:57:36 +01:00
schroda c4ba483efe Add new languages to resources 2025-03-09 16:26:23 +01:00
schroda cf348db5b8 Rename "Downloads" to "Download queue" 2025-03-09 16:26:22 +01:00
schroda 2ba0aea679 Move "category settings" to "LibrarySettings" 2025-03-09 16:26:21 +01:00
schroda 95ac4832bd Fix "main route" detection
There was a possibility that routes were incorrectly detected as main routes which caused the back button to not get shown.

E.g. a route that is only visible on desktop was still considered a main route on mobile devices
2025-03-09 16:19:33 +01:00
schroda df719df666 Show "Download" page only on desktop in nav bar 2025-03-09 16:19:32 +01:00
schroda 6afc9f22b6 Introduce "more" page
- moves "Settings" into "more" page
2025-03-09 16:19:31 +01:00
schroda f7b6006cc0 Delete chapters on migration again
Regression a29c113b5f
2025-03-06 21:09:07 +01:00
schroda 6ebf13d328 Properly log errors 2025-03-03 23:59:58 +01:00
schroda 1d9c3738fd [skip ci] Remove unnecessary prop source
Should have been removed with 52c8734c59
2025-02-25 18:00:08 +01:00
schroda 537ab5850d Fix TypeError
Forgot to remove prop in 52c8734c59
2025-02-25 17:59:28 +01:00
schroda 52c8734c59 Fix opening chapter via chapter selection in reader
Guard should have been removed with 4a9d2903b8
2025-02-23 13:21:32 +01:00
schroda ba3f0f6574 Fix closing transition pages in first/last chapter
In case the first/last chapter of a manga was opened, clicking the previous/next tap-zone caused the last/first page to get opened
2025-02-23 13:06:12 +01:00
schroda ce2281a8b9 Fix resuming last read page
Regression 856e928c44
2025-02-20 13:16:39 +01:00
schroda e3fc8f4195 Fix typing after "apollo-client" update to v3.13.1
Introduced due to the apollo-client dependency update in f39c902b5f
2025-02-19 17:38:58 +01:00
schroda 5e10e1629f Fix intersection detection for horizontal pager 2025-02-19 16:44:01 +01:00
schroda a85e5584c8 Preserve scroll position continuous pager on previous chapter load
In the horizontal pager loading the previous chapter caused the scroll position to get lost and instead of starting at the end of the previous chapter, the scroll position was at the very start.
This happened everytime no matter if the scroll position was at the x 0 or not before the previous chapter got visible.

Same issue can be observed in the vertical pager in case the scroll position is at y 0 before the previous chapter has been rendered.
2025-02-19 16:43:58 +01:00
schroda 811b17361c Fix intersection root margin for horizontal pager 2025-02-19 16:39:55 +01:00
schroda eba3cadb8b Properly detect previous chapter load state
Regression from 174d850093
2025-02-18 02:06:13 +01:00
schroda e28c603112 Streamline tap zone click handling 2025-02-18 02:06:12 +01:00
schroda 5eb442e760 Remove duplicated state setter calls 2025-02-18 02:06:11 +01:00
schroda d3c6acbbfb Fix going to previous/next page from first/last 2025-02-18 02:01:16 +01:00
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
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
schroda 2ec42d962a Remove context usage from ReaderPage
In case many chapters are rendered, even just the HOC wrapper component re-render due to the context change increases the render time.

Thus, getting rid of these HOC wrapper re-renders by moving the context usage up to the ReaderViewer decreases the render time.
2025-02-03 17:17:35 +01:00
schroda b01b23b069 Remove context usage from ReaderChapterViewer
In case many chapters are rendered, even just the HOC wrapper component re-render due to the context change increases the render time.

Thus, getting rid of these HOC wrapper re-renders by moving the context usage up to the ReaderViewer decreases the render time.
2025-02-03 17:17:35 +01:00
schroda 4a9d2903b8 Add infinite scroll to reader 2025-02-03 17:17:35 +01:00
schroda 4789a74785 Add option to open specific chapter via "useOpenChapter" 2025-02-03 17:17:35 +01:00
schroda 45b4874348 Remove unnecessary keys 2025-02-03 17:17:35 +01:00
schroda c79ccf3523 Improve memoization of "ReaderTransitionPage"
- use chapter properties instead of chapter object
- only pass "handleBack" in case the transition page is for the first or last chapter
2025-02-03 17:17:35 +01:00
schroda d73bb31df9 Pass non "source props" to "prop source creators" in "withPropsFrom" HOC 2025-02-03 17:17:35 +01:00
schroda 91e8b70d35 Rename "initialChapter" to "chapterForDuplicatesHandling" 2025-02-03 17:17:35 +01:00
schroda a80e8885fb Introduce "getReaderOpenChapterLocationState" function 2025-02-03 17:17:35 +01:00
schroda a6f015d5e3 Add comment 2025-02-03 16:30:10 +01:00
schroda 6d47ab05c1 Improve mouse drag detection
Ignore mouse movements in directions where the element does not have a content overflow and thus, scrolling is not possible
2025-02-03 16:30:08 +01:00
schroda 441cdaa6e7 Handle line breaks in tracker search entry summaries 2025-02-03 16:30:07 +01:00