Commit Graph

2336 Commits

Author SHA1 Message Date
schroda
6c8df33a13 Delete outdated metadata after committing updated ones
In case the outdated metadata get successfully deleted and the updated metadata fail to commit, metadata gets lost, due to not being able to apply the migrations again since the outdated metadata have already been deleted
2025-01-11 03:24:15 +01:00
schroda
338fb96de3 Prevent possible TypeError 2025-01-11 03:14:41 +01:00
schroda
07aeb53fa1 Commit metadata value migrations 2025-01-11 03:12:48 +01:00
schroda
7901961821 Add "auto" progress bar position
Automatically choose the progress bar position based on the available space.
Previously it was only possible to automatically switch from a horizontal to a vertical position but not the other way around
2025-01-11 03:09:10 +01:00
schroda
f032f971ac Fix position of download status in updates page 2025-01-10 17:26:41 +01:00
schroda
757cf599d6 Enable mouse drag scrolling for all reading modes 2025-01-10 02:07:24 +01:00
schroda
afc3a23ae0 Always scroll to start of page on page change
By the time the scroll area got scrolled to the start of the visible pages, the previous/next page wasn't yet shown and thus, the scrollable area wasn't updated yet.
Thus, in case the scrollable area grew in width due to the page change, the start never got scrolled into view due to triggering the logic too early.
2025-01-10 02:03:31 +01:00
schroda
e4e38e74b3 Handle nav bar safe area top inset
The default nav bar icons were possibly slightly hidden under the top bar in case there was a "safe area top inset"
2025-01-09 23:03:29 +01:00
schroda
a423d11442 Prevent reader pages from getting cut off on small screens
In case the pages were larger in width then the screen, they got cut off and were not fully viewable.
2025-01-09 21:41:38 +01:00
schroda
288fee590d Extract "apply reader width" check into function 2025-01-09 02:11:44 +01:00
schroda
28eb18f88c Prevent custom scrollbar on iOS
While iOS does not support customizing the scrollbar, it seems there is a bug when the width and/or height gets set.

(see MediaQuery#getScrollbarSize) When inserting an empty div with forced scrollbars and calculating the scrollbar size, for some reason on iOS it has a scrollbar that affects the available size, which is not possible.
2025-01-09 00:46:25 +01:00
schroda
6bbaee6d8d Replace deprecated "apple-mobile-web-app-capable" meta tag 2025-01-09 00:28:19 +01:00
schroda
11765c021a Use new icon 2025-01-09 00:27:28 +01:00
schroda
d66b3eb38d Handle main content screen right safe area 2025-01-08 23:59:26 +01:00
schroda
33162e70b0 Center delete icon in mutable list setting 2025-01-08 00:34:51 +01:00
schroda
054e837139 Move "readerType" "Webtoon" value migration to 3rd migration
Does not matter since it will only affect stable users which haven't had these migrations applied yet anyway
2025-01-06 12:51:43 +01:00
schroda
feebd93555 Properly delete metadata during key deletion migration 2025-01-06 12:39:39 +01:00
schroda
6e0d1cfd3d Simplify metadata app key prefix migration 2025-01-06 12:23:41 +01:00
schroda
3d7a4146e4 Handle metadata key deletion early exit
In case no keys had to be deleted it always returned an empty object which broke the whole metadata migration and resulted in the final metadata to always fall back to the default values
2025-01-06 01:58:49 +01:00
schroda
9f42b75eee Prevent applying already applied metadata migrations again
The "appliedMigrationId" was converted to it's index of the "METADATA_MIGRATIONS" and then was compared to the "migration id" which starts at 1 instead of 0
2025-01-06 01:45:46 +01:00
schroda
724319b6c5 Only commit metadata migration changes of newly applied migration
Changes got commited everytime regardless off if the migration had already been applied
2025-01-06 01:42:42 +01:00
schroda
d87fa3721e Migrate old reader settings II 2025-01-05 15:29:56 +01:00
schroda
05ce572c67 Add logic to delete metadata on migration 2025-01-05 15:29:56 +01:00
schroda
bb473276a7 Handle multiple prefixes in metadata key migration
Was never updated after the change that made it possible that metadata can have multiple prefixes (e.g. device names)
2025-01-05 15:29:55 +01:00
schroda
ab2b1b2218 Handle multiple prefixes in metadata value migration
Was never updated after the change that made it possible that metadata can have multiple prefixes (e.g. device names)
2025-01-05 15:29:54 +01:00
schroda
d657ad3999 Commit new metadata after migration 2025-01-05 15:29:51 +01:00
schroda
040584989e Migrate metadata once instead of when reading a value 2025-01-05 14:54:37 +01:00
schroda
258b26f837 Remove unnecessary function exports 2025-01-05 14:54:20 +01:00
schroda
65da9db123 Correctly read last applied migration id from metadata 2025-01-05 14:53:52 +01:00
schroda
1533e37623 Add "migration" to global metadata keys 2025-01-04 21:31:47 +01:00
schroda
a51d81d267 Extract "MetadataReader" functions 2025-01-04 21:28:26 +01:00
schroda
b7971f5183 Move "getAppMetadataFrom" to "MetadataMigrations" 2025-01-04 21:27:51 +01:00
schroda
3782091601 Remove metadata "applyMigration" option 2025-01-04 21:23:05 +01:00
schroda
8ae8cfa140 Fix tsc issues 2025-01-04 20:59:18 +01:00
schroda
1b1ddeb334 Show "info" toast severity by default
The default severity of MUI is "success"
2025-01-04 16:28:16 +01:00
schroda
afeb0f9aca Correctly check if chapter exists
The wrong chapter list was used.
"chapters" is the filtered list of chapters, which e.g. doesn't contain duplicated chapters.
This caused the "chapter source order" to potentially be higher than the total chapters of the manga.

The end result of this was that the fetched state of the pages wasn't properly detected causing errors due to rendering the reader before it was in the correct state
2025-01-04 15:58:33 +01:00
schroda
62155005ab Apply auto vertical progress bar for BOTTOM position only
In case "auto vertical position" is not "OFF" but the main position is not "BOTTOM", the auto mode still should be considered to be "OFF"
2025-01-02 22:22:31 +01:00
schroda
52f5415c9f Memoize mobile progress bar position related styling
Only really relevant for the "progress bar slot" prop to prevent the slots from unnecessary re-rendering, since depending on the total pages, this can impact the render performance on page changes heavily
2025-01-02 22:22:30 +01:00
schroda
b5a0ec7371 Ignore reading direction for vertical progress bar
The page change handling of the progress bar was inverted while RTL was the set readers reading direction.
However, this is only relevant for the horizontal progress bar
2025-01-02 21:48:23 +01:00
schroda
f90e4597f8 Make mobile progress bar position changeable 2025-01-02 21:48:02 +01:00
schroda
92892e6604 Optionally adjust progress bar position based on available size 2025-01-02 21:26:19 +01:00
schroda
4aa144cb25 Make minimized standard progress bar gaps transparent 2025-01-02 14:43:01 +01:00
schroda
87a1a67880 Use static hide timeout for all reader setting previews
The default timeout of "notistack" is 5s by default, however, this makes it more clear and also prevents any behaviour changes in the future, in case the default timeout gets changed
2025-01-02 03:22:25 +01:00
schroda
af8ada9a62 Always add close button to snackbars 2025-01-02 03:04:14 +01:00
schroda
ed992046cb Remove unintentional touch bindings
Caused double clicks
2025-01-02 02:41:42 +01:00
schroda
2944252d91 Make chapter transition warnings optional 2025-01-01 17:24:36 +01:00
schroda
e199b75756 Show correct download queue removal failure 2025-01-01 16:44:18 +01:00
schroda
f13e8eb412 Fix converting pages to double page mode 2024-12-31 17:17:54 +01:00
schroda
f3792edac0 Ignore visible transition pages on page change in continuous pager 2024-12-31 17:03:42 +01:00
schroda
886cc469bc Fix TypeError when reaching scroll end in continuous pager
When the end of the scrollable element is reached in the continuous reader, the last image is not visible anymore.
Thus, the "firstVisibleImageIndex" is invalid and gets incorrectly used for the "isEndReached" case which results in an TypeError when trying to use the actual page via the index
2024-12-31 16:54:21 +01:00