Commit Graph

459 Commits

Author SHA1 Message Date
schroda
0c22a9012e Feature/cleanup metadata related logic (#657)
* Remove unnecessary parameter from "requestUpdateServerMetadata"

* Streamline updating metadata server settings

* Move metadata related logic
2024-03-16 16:21:15 +01:00
schroda
aea5dad0ce Remember last used migration flags (#656) 2024-03-16 14:02:54 +01:00
schroda
318c4a5040 Add option to delete downloaded chapters on migration (#655) 2024-03-16 13:45:54 +01:00
schroda
31d53ed182 Remove search page from the history after migrating (#654) 2024-03-16 13:45:47 +01:00
schroda
2047d76ad9 Update workflow actions (#649)
* Update workflow actions

* Fix tsc issues
2024-03-09 00:24:48 +01:00
schroda
ed74f7c851 Make remaining image requests abortable (#645) 2024-03-08 00:24:01 +01:00
schroda
535cb1b359 Fix/save active device only in local storage (#643)
* Save "activeDevice" in the local storage

* Set default back to for "DeviceSetting"
2024-03-07 01:12:35 +01:00
schroda
c0c30163c3 Validate device name (#642)
allow only
 - 16 chars
 - letters
 - numbers
 - "-"
 - "_"
2024-03-06 23:44:05 +01:00
schroda
4aec3c94ef Feature/support settings per device (#640)
* Optionally prevent deletion and mutation of "MutableListSetting" items

* Save server metadata per device

This makes it possible to e.g. have different settings on a desktop and a smartphone.
2024-03-06 23:07:48 +01:00
schroda
daf6b50249 Fix/deprioritize image requests (#638)
* Use "fetch" instead of "axios"

Axios does not support prioritizing requests

* Deprioritize image requests

The browser requests images (<img>) with low priority by default.
Due to switching to loading images via axios (f852ce70e7), the image requests had the same priority as other requests and thus blocked e.g. xhr requests
2024-03-05 02:07:05 +01:00
schroda
0f3549ead9 Fix/manga migrate option shown for non library manga on large screens (#637)
This happened only on large screens
2024-03-04 20:40:47 +01:00
schroda
224df1300f Feature/improve back navigation button (#636)
* Improve detection of last page in history

* Use "useBackButton" in reader
2024-03-04 20:40:14 +01:00
schroda
f0fc31ceac Fix/spinner image not able to be opened in new tab or saved (#635)
After the object url has been revoked the image can't be used anymore
2024-03-03 23:07:12 +01:00
schroda
fb0622e209 Add chapter action to open chapter on source (#634) 2024-03-02 16:11:39 +01:00
schroda
8bdf035ca7 Feature/add option to remove manga from categories when removing from library (#633)
* Optionally remove manga categories when removing them from library

* Use "Mangas::removeFromLibrary"

* Handle uncatched promises
2024-03-02 15:28:58 +01:00
schroda
c5a5c4b8af Fix/add manga to library without dialog not adding default categories (#632)
* Add default categories when adding manga to library without dialog

* Add manga to library and update categories in one mutation
2024-03-02 15:26:15 +01:00
schroda
eb233aef3d Feature/improve add to library category selection dialog (#631)
* Create "Categories" util class

* Only show add to library category selection in case categories exist

* Add edit categories button in select categories dialog

* Add option to disable add to library dialog to the dialog
2024-03-02 15:23:12 +01:00
schroda
79d35404d3 Fix/double page mode not aborting preload image requests (#628)
* Use request manager to preload images in DoublePagedPager

Was forgotten to update along with f852ce70e7

The requests for the preload also never got aborted

* Revoke object urls after load
2024-03-01 18:27:46 +01:00
schroda
d242552751 Add width to image loading placeholder in horizontal mode (#627) 2024-03-01 18:27:35 +01:00
schroda
f852ce70e7 Abort image requests on unmount (#624) 2024-03-01 01:17:23 +01:00
schroda
900a6c1609 Fix restoring initial page in vertical and horizontal pager (#622)
The initial page was scrolled into view before it had a height which resulted in the scroll position to stay at the top of the screen
2024-03-01 01:17:13 +01:00
schroda
629b742140 Feature/settings add new socks proxy settings (#617)
* Add new socks settings

* [VersionMapping] Require server version "r1493" for preview
2024-02-22 00:25:12 +01:00
schroda
ab0ecf4da0 Center page number correctly (#616) 2024-02-21 23:39:12 +01:00
schroda
ceec260d14 Feature/reader setting add scale small pages (#615)
* Add option to stretch small pages

In case "fit page to window" is enabled, small pages can be scaled up to the available width and height, while maintaining the aspect ratio

* Cleanup "imageStyle" function
2024-02-21 02:42:07 +01:00
schroda
9531825bab Fix size of pages in continues reader mode (#613)
In case "fit to page" was enabled, the styling got incorrectly applied to horizontal pages. Causing the pages to be small

Regression introduced with 15825fbe53
2024-02-21 02:32:16 +01:00
schroda
d8ee676d55 Prevent invisible pages (#614)
Sometimes after changing the current page, the next page had 0 width and thus was invisible.
2024-02-21 02:32:09 +01:00
schroda
5a9618aefe Correctly update function refs when state changes (#611) 2024-02-18 15:20:30 +01:00
schroda
99c9d9d12f Use set reader width on small devices (#602)
On small devices (greater height than width) the width was always set to 100vw ignoring the set reader width via the settings
2024-02-17 00:41:37 +01:00
schroda
aea112e292 Create correct manga thumbnail url (#601)
Regression introduced with c099e01fb7
2024-02-16 21:21:47 +01:00
schroda
e383cc9ea8 Add info text to download ahead setting (#599)
Show info that current and next chapter have to be downloaded for this setting to work
2024-02-16 19:38:31 +01:00
schroda
c099e01fb7 Add manga fetch timestamp to thumbnail url (#598)
In case the fetch timestamp of a manga changed, it's possible that the thumbnail has changed as well, thus, the currently cached image should be ignored
2024-02-16 19:38:13 +01:00
schroda
2acf2b6d33 Feature/download ahead trigger chapter downloads client side (#597)
* Trigger download ahead while reading client side

* Trigger download ahead while reading earlier

Download ahead was only triggered once the chapter got marked as read

* Optionally ignore dupe chapters for download ahead

* Consider current chapters scanlator for dupe check

* Update download ahead related settings

- add new metadata setting for download ahead limit
- previous setting
  - rename
  - update usage (auto download new chapters limit)

* Select chapter to auto delete while reading depending on ignore dupe setting

Currently, the n-th to last chapter always got deleted ignoring if "ignore dupes" setting was enabled or not.

* Only auto delete chapter while reading if it is read

In case not the last read but the n-th to last read chapter should get auto deleted while reading, it currently just got deleted ignoring if it has been read or not.
2024-02-16 19:16:18 +01:00
schroda
d244ba6538 Fit double page reader pages correctly to windows width (#595)
The max-width, which is for a single page, was applied to each page of the double page reader, which resulted in both of them being able to take up 100% of the available width
2024-02-13 01:53:18 +01:00
schroda
4ffd3584c6 Handle RTL reading direction for double page reader (#594)
Changing the reading direction for the double page reader did nothing.
It just always was LTR.

Regression introduced with 4d75474b39
2024-02-13 01:53:10 +01:00
Jean-Philippe ALLEGRO
7fb1dae9c4 decrease reader's up and down arrows scrolling distance (#588)
* revert reader's up and down arrows behavior

* add variant to scrolling shortcuts

* remove comments for SCROLL_OFFSET & SCROLL_OFFSET_SLIGHT

* Apply suggestions from code review

see PR #588

Co-authored-by: schroda <50052685+schroda@users.noreply.github.com>

* fix linting

---------

Co-authored-by: schroda <50052685+schroda@users.noreply.github.com>
2024-02-01 19:29:21 +01:00
schroda
506e0aa0e3 Update extension list after removing an obsolete extension (#579)
The removed extension was never removed from the cached list
2024-01-29 20:56:09 +01:00
schroda
d6468bca57 Add manga migrate option to menu on mobile devices (#584)
Should have been added with e0c5e0521d
2024-01-29 20:55:26 +01:00
schroda
6716339c0e Set default value for resetting to 50% (#585)
Should have been updated along with 2dab88eb7e
2024-01-29 20:55:16 +01:00
schroda
891d6f4165 Fix/manga migration opening search twice (#586)
* Update "MenuItem" props

* Navigate to manga migration only once

* Remove disabling migrate button on manga refresh

too much copy&paste
2024-01-29 20:54:56 +01:00
schroda
18ca66cb40 Feature/settings add flaresolverr (#568)
* [Codegen] Update to server changes

* Set "dialogTitle" by default to "settingTitle" for "NumberSetting"

* Add FlareSolverr to settings

* [VersionMapping] Require server version "r1477" for preview

* Replace static strings with translation keys
2024-01-26 21:20:06 +01:00
schroda
771d6beb18 Add missing gap to VerticalReader mode with fit to window setting (#574) 2024-01-26 20:55:27 +01:00
schroda
15825fbe53 Prevent pages from being bigger than the 100% in width (#573) 2024-01-26 20:54:38 +01:00
Chance Zibolski
4d75474b39 Fix reader width (#567)
* Fix reader width

The margin: auto on the Box container for the image was preventing 100% width
to actually mean 100%.

Now that 100% is actually possible, I think fitPageToWindow makes more
sense as a default. Additionally, since the image can fill 100% of the
page, it can cover the ReaderNavBar, so set the z-index of the
ReaderNavBar so it's rendered on top of the image and clickable.

Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>

* Support configuring reader width for DoublePage readers

Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>

* Fix single page of DoublePageReader not being able to take up full width

In case the parent container is flex row, the container does not automatically take up 100% of the available width, thus, the page also was not able to take up 100% of the width

* Fix applying reader width to double pages

The set reader width can't be applied to each page of the double pages because otherwise it will already take up 100% of the available width with the setting only being at 50%.

Instead, the set width has to be divided by 2, so that both pages take up the set reader width

* Prevent double page spinner from being larger than 100% of the available width

* Update width styling of the page spinner

* Always center pages in the middle of the screen

* Take up full height fitting page to window height

---------

Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
Co-authored-by: schroda <50052685+schroda@users.noreply.github.com>
2024-01-26 20:51:08 +01:00
schroda
e0c5e0521d Feature/manga migration (#536)
* Add "migration" tab to "Browse" screen

* Add missing useEffect cleanup for navbar title and actions

* Make "SourceGridLayout" reusable

* Add migration tab to "Browse"

* Add migration logic
2024-01-26 20:50:51 +01:00
Chance Zibolski
5032a0ae94 Make reader width configurable (#565)
Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
2024-01-21 22:33:13 +01:00
schroda
dcbf5a1899 Fix/library manga selection type error (#566)
* Prevent TypeError when deselecting items from a specific key

This was noticed when changing the categories of a manga to a category without any selected mangas, in this case, when trying to deselect a manga after changing the categories, a TypeError was thrown which resulted in a white screen

* Remove duplicates from the list of all selected ids

* Update state via setter

* Clear selection after disabling the library selection mode

* Remove console log
2024-01-21 22:31:43 +01:00
Chance Zibolski
05f57730db Support configuring automatic downloads by category (#562)
Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
2024-01-21 22:31:04 +01:00
schroda
f8e1bfc401 Correctly change the category of a manga from the library (#560)
For a single manga the "mangaId" should be passed while "mangaIds" is empty, however, the "mangaIds" were passed as an empty array which caused an empty array of manga ids to be passed with the mutation
2024-01-17 13:46:05 +01:00
schroda
38b364bb55 Remove reader webtoon mode page gaps (#552)
Regression introduced with 199b62341f
2024-01-15 14:27:29 +01:00
schroda
738a22233b Internationalize failed img retry text (#551) 2024-01-15 00:55:39 +01:00