When migrating an entry to the same source as it already is from, the source queues got blocked, preventing any progress.
Since the migration does not do any request to the source of the entry to migrate, it is not required to go through the queue for the source.
There is a possibility that the source changed the manga title after the track record was bound.
In that case it is possible that the track record won't be found anymore when executing the search.
Thus, instead of using the manga title as the search string, the existing track records title should be used instead to make sure that the bound track record will be included in the search results.
Regression a7dcdd5651
"usePrevious" uses "useEffect" to update the ref while the fix of the commit updated the state during the render function call.
This causes the component to not actually render and immediately call the render function again. Which then leads to the "usePrevious" hooks "useEffect" to never getting called.
For the bulk selection the "download ahead" option only downloaded chapter in case there weren't enough downloaded chapters.
In the single mode, this wasn't the case. There was "logic" to make this happen; however, it was not working as expected
Regression 9ed05f3fc0
Due to the change to check if an image is cached, which is done async, it was possible that the image request was aborted before the request actually got queued.
In that case, the abort was called against the "noop" function and did not actually abort the triggered request.
Thus, after the image got queued, we have to optionally abort it again to ensure that the request really gets aborted.
Obsolete extensions are not grouped at the top of the extension page anymore and instead show an "OBSOLETE" warning text with a the "uninstall" action.
In these modes the reader does not load leading pages to prevent the resulting layout shift on load.
This behavior prevented the retry button functionality.
Due to the way loading/failed pages are rendered and how the current page is detected, it's possible that the retry button for a leading page is visible, which resulted in showing a retry button without any functionality.
fixes#1088
When directly opening the source/extension browse page as the initial page, the metadata server settings weren't loaded yet, and thus, the default values were being used.
Thus, when opening the dialog the first time, it was showing the default selected languages.
In case the search was aborted due to already having found a match, the state was not updated.
Thus, only if the main migration was aborted and not just the "local" manga search, should it exit early on an error.
Was only noticeable in the mobile reader ui because the desktop one hides this component and uses its own logic.
It resulted in the previous/next button not being clickable because the current page component was overlaying it