From a638333684641dd755b0ed52371ffe176174edde Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Sun, 29 Oct 2023 20:51:53 +0100 Subject: [PATCH] Handle source browse when first page is also the last page (#436) In case the first page was also the last page, there is no next page that can be fetched. On large screens, where the initial pages to fetch are 2, this resulted in an endless loading screen --- src/lib/requests/RequestManager.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/requests/RequestManager.ts b/src/lib/requests/RequestManager.ts index 6da7d485..b6f0004c 100644 --- a/src/lib/requests/RequestManager.ts +++ b/src/lib/requests/RequestManager.ts @@ -955,7 +955,9 @@ export class RequestManager { getVariablesFor(0), ); - const areInitialPagesFetched = cachedResults.length >= initialPages; + const areInitialPagesFetched = + cachedResults.length >= initialPages || + (!!cachedResults.length && !cachedResults[cachedResults.length - 1].data?.fetchSourceManga.hasNextPage); const isResultForCurrentInput = result?.forInput === JSON.stringify(getVariablesFor(0)); const lastPage = cachedPages.size ? Math.max(...cachedPages) : input.page; const nextPage = isResultForCurrentInput ? result.size : lastPage;