From 04936e75af15b57c94424be2a3b4aee2f28c75c4 Mon Sep 17 00:00:00 2001 From: Aiden Vigue Date: Sat, 29 May 2021 13:11:54 -0400 Subject: [PATCH] pagination bug --- JellyfinPlayer/LibraryView.swift | 5 +++-- .../ViewModels/LibraryViewModel.swift | 19 +++++++++++++++---- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/JellyfinPlayer/LibraryView.swift b/JellyfinPlayer/LibraryView.swift index 46cc99b3..d6b1b277 100644 --- a/JellyfinPlayer/LibraryView.swift +++ b/JellyfinPlayer/LibraryView.swift @@ -71,12 +71,13 @@ struct LibraryView: View { Button { viewModel.requestPreviousPage() } label: { - Image(systemName: "chevron.left") + Image(systemName: "chevron.left").font(.system(size: 25)) }.disabled(viewModel.isHiddenPreviousButton) + Spacer() Button { viewModel.requestNextPage() } label: { - Image(systemName: "chevron.right") + Image(systemName: "chevron.right").font(.system(size: 25)) }.disabled(viewModel.isHiddenNextButton) Spacer() } diff --git a/JellyfinPlayer/ViewModels/LibraryViewModel.swift b/JellyfinPlayer/ViewModels/LibraryViewModel.swift index d83935e3..9ddd2f85 100644 --- a/JellyfinPlayer/ViewModels/LibraryViewModel.swift +++ b/JellyfinPlayer/ViewModels/LibraryViewModel.swift @@ -121,17 +121,28 @@ final class LibraryViewModel: ObservableObject { self.isLoading = false }, receiveValue: { [weak self] items, count in guard let self = self else { return } - if count > 100 { - if self.page > 1 { + print(count) + print(items.count) + print(self.page) + + if(count > 100) { + self.isHiddenPreviousButton = true + self.isHiddenNextButton = true + + if(self.page > 1) { self.isHiddenPreviousButton = false } - if count > (self.page * 100) { + + if(self.page * 100 < count) { self.isHiddenNextButton = false } } else { - self.isHiddenNextButton = true self.isHiddenPreviousButton = true + self.isHiddenNextButton = true } + + print(self.isHiddenPreviousButton) + print(self.isHiddenNextButton) self.items = items })