Chapters are being fetched sorted by descending source order, thus, the next chapters index is less than the current one
Regression introduced with 7caea4e526
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
* 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
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
After installing/uninstalling/updating an extension all other extension were removed from the list besides the updated extension
Regression introduced with 506e0aa0e3
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
* 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
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.
* [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
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).
* 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>
* 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
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
* Refetch categories after updating a manga
After adding/removing a manga to/from the library, the categories did not update.
* Include manga categories int the manga update mutation response
* page loading works and looks good now to make double page work with it
* Update double page spinner styling
* Render pages everytime the component gets rendered
- remove refs because they do not trigger a rerender
- remove initial render interval
- remove page rendering via portal
During the initial render nothing got rendered (pages or placeholder) because for that to happen, the images had to be loaded.
Thus, the loading placeholder never got shown.
* Enable skipping forward while pages are loading
---------
Co-authored-by: schroda <50052685+schroda@users.noreply.github.com>
Translated using Weblate (Spanish)
Spanish: currently translated at 100.0% (354 of 354 strings)
Translations update from Hosted Weblate
Translated using Weblate (Spanish)
Spanish: currently translated at 96.3% (339 of 352 strings)
Translations update from Hosted Weblate
Translated using Weblate (Vietnamese)
Vietnamese: currently translated at 56.5% (191 of 338 strings)
Translations update from Hosted Weblate
Translated using Weblate (Chinese (Simplified))
Chinese (Simplified): currently translated at 100.0% (338 of 338 strings)
Translations update from Hosted Weblate
Translated using Weblate (German)
German: currently translated at 31.6% (107 of 338 strings)
Translations update from Hosted Weblate
Translated using Weblate (Chinese (Simplified))
Chinese (Simplified): currently translated at 93.3% (308 of 330 strings)
Translations update from Hosted Weblate
Translated using Weblate (Spanish)
Spanish: currently translated at 100.0% (330 of 330 strings)
Translations update from Hosted Weblate
Translated using Weblate (Spanish)
Spanish: currently translated at 100.0% (328 of 328 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: 志明 <chen5418@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/suwayomi/tachidesk-webui/de/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/tachidesk-webui/es/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/tachidesk-webui/vi/
Translate-URL: https://hosted.weblate.org/projects/suwayomi/tachidesk-webui/zh_Hans/
Translation: Suwayomi/Tachidesk-WebUI