From 6eb19c67b79f2ec691a3c772729c698c8dde857e Mon Sep 17 00:00:00 2001 From: Skitty Date: Sun, 4 Sep 2022 15:03:57 -0500 Subject: [PATCH] Fix infinite loading indicator with versions --- .../SettingsViews/SettingsAppVersionView.swift | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/Ferrite/Views/SettingsViews/SettingsAppVersionView.swift b/Ferrite/Views/SettingsViews/SettingsAppVersionView.swift index 78aaba9..a9a180d 100644 --- a/Ferrite/Views/SettingsViews/SettingsAppVersionView.swift +++ b/Ferrite/Views/SettingsViews/SettingsAppVersionView.swift @@ -14,11 +14,13 @@ struct SettingsAppVersionView: View { @State private var viewTask: Task? @State private var releases: [GithubRelease] = [] + @State private var loadedReleases = false + var body: some View { ZStack { - if releases.isEmpty { + if !loadedReleases { ActivityIndicator() - } else { + } else if !releases.isEmpty { List { Section(header: Text("GitHub links")) { ForEach(releases, id: \.self) { release in @@ -33,15 +35,16 @@ struct SettingsAppVersionView: View { viewTask = Task { do { if let fetchedReleases = try await Github().fetchReleases() { - withAnimation { - releases = fetchedReleases - } + releases = fetchedReleases } else { toastModel.updateToastDescription("Github error: No releases found") } } catch { toastModel.updateToastDescription("Github error: \(error)") } + withAnimation { + loadedReleases = true + } } } .onDisappear {