From cdec38be7ad0f77be9f09c8ab29a80af920ae5cc Mon Sep 17 00:00:00 2001 From: Ethan Pippin Date: Sat, 16 Oct 2021 09:53:23 -0600 Subject: [PATCH] Review edits --- .../Views/ServerListView.swift | 4 +-- JellyfinPlayer tvOS/Views/UserListView.swift | 4 +-- JellyfinPlayer/Views/ServerListView.swift | 7 ++--- JellyfinPlayer/Views/UserListView.swift | 6 ++-- Shared/ViewModels/ViewModel.swift | 31 ------------------- 5 files changed, 8 insertions(+), 44 deletions(-) diff --git a/JellyfinPlayer tvOS/Views/ServerListView.swift b/JellyfinPlayer tvOS/Views/ServerListView.swift index 518750b5..5ca66b3f 100644 --- a/JellyfinPlayer tvOS/Views/ServerListView.swift +++ b/JellyfinPlayer tvOS/Views/ServerListView.swift @@ -18,7 +18,7 @@ struct ServerListView: View { @ViewBuilder private var listView: some View { ScrollView { - VStack { + LazyVStack { ForEach(viewModel.servers, id: \.id) { server in Button { serverListRouter.route(to: \.userList, server) @@ -46,7 +46,7 @@ struct ServerListView: View { Spacer() } } - .padding([.leading, .trailing], 100) + .padding(.horizontal, 100) .contextMenu { Button(role: .destructive) { viewModel.remove(server: server) diff --git a/JellyfinPlayer tvOS/Views/UserListView.swift b/JellyfinPlayer tvOS/Views/UserListView.swift index a35a21e2..85bcbe52 100644 --- a/JellyfinPlayer tvOS/Views/UserListView.swift +++ b/JellyfinPlayer tvOS/Views/UserListView.swift @@ -17,7 +17,7 @@ struct UserListView: View { @ViewBuilder private var listView: some View { ScrollView { - VStack { + LazyVStack { ForEach(viewModel.users, id: \.id) { user in Button { viewModel.login(user: user) @@ -33,7 +33,7 @@ struct UserListView: View { } } } - .padding([.leading, .trailing], 100) + .padding(.horizontal, 100) .contextMenu { Button(role: .destructive) { viewModel.remove(user: user) diff --git a/JellyfinPlayer/Views/ServerListView.swift b/JellyfinPlayer/Views/ServerListView.swift index c920a56e..bd0ea63e 100644 --- a/JellyfinPlayer/Views/ServerListView.swift +++ b/JellyfinPlayer/Views/ServerListView.swift @@ -15,10 +15,9 @@ struct ServerListView: View { @EnvironmentObject var serverListRouter: ServerListCoordinator.Router @ObservedObject var viewModel: ServerListViewModel - @ViewBuilder private var listView: some View { ScrollView { - VStack { + LazyVStack { ForEach(viewModel.servers, id: \.id) { server in Button { serverListRouter.route(to: \.userList, server) @@ -64,7 +63,6 @@ struct ServerListView: View { } } - @ViewBuilder private var noServerView: some View { VStack { Text("Connect to a Jellyfin server to get started") @@ -80,7 +78,7 @@ struct ServerListView: View { .frame(maxWidth: 400, maxHeight: 50) .frame(height: 50) .cornerRadius(10) - .padding([.leading, .trailing], 30) + .padding(.horizontal, 30) .padding([.top, .bottom], 20) Text("Connect") @@ -114,7 +112,6 @@ struct ServerListView: View { } } - @ViewBuilder private var leadingToolbarContent: some View { Button { serverListRouter.route(to: \.basicAppSettings) diff --git a/JellyfinPlayer/Views/UserListView.swift b/JellyfinPlayer/Views/UserListView.swift index 55ffb975..cd2f6411 100644 --- a/JellyfinPlayer/Views/UserListView.swift +++ b/JellyfinPlayer/Views/UserListView.swift @@ -14,10 +14,9 @@ struct UserListView: View { @EnvironmentObject var userListRouter: UserListCoordinator.Router @ObservedObject var viewModel: UserListViewModel - @ViewBuilder private var listView: some View { ScrollView { - VStack { + LazyVStack { ForEach(viewModel.users, id: \.id) { user in Button { viewModel.login(user: user) @@ -53,7 +52,6 @@ struct UserListView: View { } } - @ViewBuilder private var noUserView: some View { VStack { Text("Sign in to get started") @@ -69,7 +67,7 @@ struct UserListView: View { .frame(maxWidth: 400, maxHeight: 50) .frame(height: 50) .cornerRadius(10) - .padding([.leading, .trailing], 30) + .padding(.horizontal, 30) .padding([.top, .bottom], 20) Text("Sign in") diff --git a/Shared/ViewModels/ViewModel.swift b/Shared/ViewModels/ViewModel.swift index 001c6fed..75aefcf7 100644 --- a/Shared/ViewModels/ViewModel.swift +++ b/Shared/ViewModels/ViewModel.swift @@ -70,37 +70,6 @@ class ViewModel: ObservableObject { self.errorMessage = genericErrorMessage LogManager.shared.log.error("Request failed: Generic error - \(error.localizedDescription)") } - -// if let errorResponse = error as? ErrorResponse { -// -// let networkError: NetworkError -// -// switch errorResponse { -// case .error(-1, _, _, _): -// networkError = .URLError(response: errorResponse, displayMessage: displayMessage, logConstructor: logConstructor) -// // Use the errorResponse description for debugging, rather than the user-facing friendly description which may not be implemented -// LogManager.shared.log.error("Request failed: URL request failed with error \(networkError.errorMessage.code): \(errorResponse.localizedDescription)") -// case .error(-2, _, _, _): -// networkError = .HTTPURLError(response: errorResponse, displayMessage: displayMessage, logConstructor: logConstructor) -// LogManager.shared.log.error("Request failed: HTTP URL request failed with description: \(errorResponse.localizedDescription)") -// default: -// networkError = .JellyfinError(response: errorResponse, displayMessage: displayMessage, logConstructor: logConstructor) -// // Able to use user-facing friendly description here since just HTTP status codes -// LogManager.shared.log.error("Request failed: \(networkError.errorMessage.code) - \(networkError.errorMessage.title): \(networkError.errorMessage.logConstructor.message)\n\(error.localizedDescription)") -// } -// -// self.errorMessage = networkError.errorMessage -// -// networkError.logMessage() -// } else { -// let generalErrorMessage = ErrorMessage(code: 0, -// title: "Error", -// displayMessage: error.localizedDescription, -// logConstructor: logConstructor) -// -// self.errorMessage = generalErrorMessage -// LogManager.shared.log.error("Request failed: General error - \(error.localizedDescription)") -// } } } }