Commit Graph

592 Commits

Author SHA1 Message Date
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
2a72cd43db Use "a" tag for manual backup creation download link (#626)
5017ba9932 did not fix the problem
2024-03-01 18:27:28 +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
c538af4462 Prevent unnecessary chapter updated due to restoring last read page (#621)
When resuming a chapter and restoring the last read page, a chapter update was send for the just restored page
2024-03-01 01:17:03 +01:00
Hosted Weblate
e34a30a79b Translations update from Hosted Weblate
Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (401 of 401 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (401 of 401 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (401 of 401 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 99.2% (398 of 401 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (398 of 398 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (398 of 398 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (397 of 397 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (397 of 397 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (397 of 397 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 99.7% (393 of 394 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Traditional))

Chinese (Traditional): currently translated at 100.0% (392 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Traditional))

Chinese (Traditional): currently translated at 98.7% (387 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (392 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (French)

French: currently translated at 40.3% (158 of 392 strings)

Co-authored-by: Fordas <fordas15@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: QuietBlade <yuanzhangzcc@163.com>
Co-authored-by: anvstin <aurelien.visentin@hotmail.fr>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: guohuageng <guohuageng@gmail.com>
Co-authored-by: plum7x <plumgift@hotmail.com>
Co-authored-by: 宮河ひより <hiyorituk@gmail.com>
Co-authored-by: 清水汐音 <chenzhongjie19940725@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/es/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/fr/
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
2024-02-23 20:25:39 +01:00
schroda
21bb931a74 Use full available width for reader component (#618)
Due to horizontally centering the flex-box items via "alignItems", the items did not stretch anymore, which is the default value for "alignItems" and thus, did not take up the available width.

Regression introduced with ab0ecf4da0
2024-02-22 19:24:27 +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
97ab4004a6 Do not update chapter in case it has not been loaded yet (#612) 2024-02-18 15:20:37 +01:00
schroda
5a9618aefe Correctly update function refs when state changes (#611) 2024-02-18 15:20:30 +01:00
schroda
02dc9ca736 Add "thumbnailUrlLastFetched" to thumbnail url (#607) 2024-02-17 20:24:09 +01:00
schroda
e5ffbb462c Feature/gql remove download ahead limit (#608)
* Use new "autoDownloadNewChaptersLimit" setting

* Use "downloadAheadLimit" from metadata

Should have been changed with 2acf2b6d33
2024-02-17 20:24:02 +01:00
schroda
fd651b6165 Feature/add vui as webui flavor (#609)
* Remove unused "downloadAhead" function

* [Codegen] Update generated files

* Add "VUI" as webui flavor

* Add info about changing the webUI channel or flavor
2024-02-17 20:16:51 +01:00
schroda
05077b4a2b Correctly link to custom repos settings (#603)
Regression introduced with 4b54b09395
2024-02-17 16:53:53 +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
4b54b09395 Rename "ExtensionSettings" to "BrowseSettings" (#600) 2024-02-16 19:53:00 +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
0edec685f9 Correctly select next chapter id for download ahead (#596)
Chapters are being fetched sorted by descending source order, thus, the next chapters index is less than the current one

Regression introduced with 7caea4e526
2024-02-13 01:53:49 +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
schroda
444ebf8007 Fix/reader outdated chapter page count (#593)
* Always fetch pages for not downloaded chapter

The pages of non downloaded chapters have to be re-fetched since the local data might be out of date which would result in page fetch failures

* Correctly check for loading state of chapter

For the first render of e.g. the next chapter, the "arePagesLoaded" flag was still true from the previous chapter which caused the loading state to incorrectly be false.

This caused pages to get requested which on server side potentially pointed to invalid urls and thus the requests failed.

* Use updated chapter in case page count changed
2024-02-12 21:45:50 +01:00
schroda
5017ba9932 Handle backup creation on same domain as server (#592)
In case the webUI is hosted by the server the backup creation caused the app to navigate to the backup url which resulted in an empty page

Regression introduced with db5d3ff7c0
2024-02-12 21:45:33 +01:00
schroda
7caea4e526 Download ahead only in case current and next chapter are downloaded 2024-02-12 20:53:53 +01:00
schroda
bf3815e3bd Correctly update cache after updating an extension (#590)
After installing/uninstalling/updating an extension all other extension were removed from the list besides the updated extension

Regression introduced with 506e0aa0e3
2024-02-01 22:58:01 +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
Hosted Weblate
76e5c67417 Translations update from Hosted Weblate
Translated using Weblate (Chinese (Traditional))

Chinese (Traditional): currently translated at 98.7% (387 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (392 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Traditional))

Chinese (Traditional): currently translated at 98.2% (385 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Arabic)

Arabic: currently translated at 100.0% (392 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Arabic)

Arabic: currently translated at 16.8% (66 of 392 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (369 of 369 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (367 of 367 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (367 of 367 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (365 of 365 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (364 of 364 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (364 of 364 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (361 of 361 strings)

Translations update from Hosted Weblate

Translated using Weblate (Chinese (Simplified))

Chinese (Simplified): currently translated at 100.0% (361 of 361 strings)

Translations update from Hosted Weblate

Translated using Weblate (Spanish)

Spanish: currently translated at 100.0% (361 of 361 strings)

Co-authored-by: Fordas <fordas15@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yuhyeong <lemar14r@gmail.com>
Co-authored-by: abdelbasset jabrane <ribago9317@cubene.com>
Co-authored-by: ccms <a18ccms@163.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: plum7x <plumgift@hotmail.com>
Co-authored-by: 宮河ひより <hiyorituk@gmail.com>
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/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/suwayomi-webui/zh_Hant/
Translation: Suwayomi/Suwayomi-WebUI
2024-01-29 21:02:23 +01:00
schroda
b074de26a2 Fix/install external extension does not update extension list (#580)
* Update extension list after installing external extension file

The cache was never updated after the installation

* Make it possible to install external extension while having an empty list

* Show toasts while having an empty extension list

* Use correct extension id

* Update extension action after manual file installation

When installing an external extension the action button did not get updated due to this being an internal state of the ExtensionCard.
By including this in the key, it gets ensured that the component will get correctly updated
2024-01-29 20:59:27 +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
cee566d9b2 [Codegen] Update manga chapter total count on initial refresh (#582)
In case a manga hadn't been initialized yet, its chapter total count was still 0 after refreshing the manga and its chapter list data.
This was caused because its chapter list hadn't been fetched yet by the time the manga refresh mutation resolved.
2024-01-29 20:55:49 +01:00
schroda
c483e71bf1 Remove automatic manga update (#583)
Since the server now has an automatic global update functionality, this is not needed anymore
2024-01-29 20:55:33 +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
10ec7de628 Correctly calculate width (#578) 2024-01-26 23:59:12 +01:00
schroda
f335b59dca Actually send library db cleanup mutation (#577) 2024-01-26 21:36:07 +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
ab4cddfedd Force a reconnect in case a heartbeat is missing (#569)
There seems to be cases where the connection is lost without the client being able to reconnect (e.g. active subscription -> system hibernation -> waking up system => not receiving any messages anymore).
2024-01-26 20:55:14 +01:00