From 8221e09702194cef48ad96d8cfd5df3e1508547d Mon Sep 17 00:00:00 2001 From: Maurice Parker Date: Fri, 11 Nov 2022 17:54:10 -0600 Subject: [PATCH] Make the refresh progress view correctly size itself --- iOS/MasterFeed/MasterFeedViewController.swift | 1 + iOS/MasterFeed/RefreshProgressView.swift | 25 ++++++++----------- .../MasterTimelineViewController.swift | 1 + 3 files changed, 13 insertions(+), 14 deletions(-) diff --git a/iOS/MasterFeed/MasterFeedViewController.swift b/iOS/MasterFeed/MasterFeedViewController.swift index 6b6da7579..459033260 100644 --- a/iOS/MasterFeed/MasterFeedViewController.swift +++ b/iOS/MasterFeed/MasterFeedViewController.swift @@ -81,6 +81,7 @@ class MasterFeedViewController: UITableViewController, UndoableCommandRunner, Ma refreshControl!.tintColor = .clear progressBarViewController.view.backgroundColor = .clear + progressBarViewController.view.translatesAutoresizingMaskIntoConstraints = false let refreshProgressItemButton = UIBarButtonItem(customView: progressBarViewController.view) toolbarItems?.insert(refreshProgressItemButton, at: 2) diff --git a/iOS/MasterFeed/RefreshProgressView.swift b/iOS/MasterFeed/RefreshProgressView.swift index a93e1c1ce..654789e65 100644 --- a/iOS/MasterFeed/RefreshProgressView.swift +++ b/iOS/MasterFeed/RefreshProgressView.swift @@ -23,23 +23,20 @@ struct RefreshProgressView: View { } var body: some View { - ZStack { - if refreshProgressModel.isRefreshing { - if refreshProgressModel.isIndeterminate { - indeterminateProgressView - } else { - ProgressView(value: refreshProgressModel.progress) - .progressViewStyle(LinearProgressViewStyle()) - .frame(width: Self.width, height: Self.height) - } + if refreshProgressModel.isRefreshing { + if refreshProgressModel.isIndeterminate { + indeterminateProgressView } else { - Text(refreshProgressModel.label) - .accessibilityLabel(refreshProgressModel.label) - .font(.footnote) - .foregroundColor(.secondary) + ProgressView(value: refreshProgressModel.progress) + .progressViewStyle(LinearProgressViewStyle()) + .frame(width: Self.width, height: Self.height) } + } else { + Text(refreshProgressModel.label) + .accessibilityLabel(refreshProgressModel.label) + .font(.footnote) + .foregroundColor(.secondary) } - .frame(width: 200, height: 44) } var indeterminateProgressView: some View { diff --git a/iOS/MasterTimeline/MasterTimelineViewController.swift b/iOS/MasterTimeline/MasterTimelineViewController.swift index bdd4289a5..c55c36f4a 100644 --- a/iOS/MasterTimeline/MasterTimelineViewController.swift +++ b/iOS/MasterTimeline/MasterTimelineViewController.swift @@ -101,6 +101,7 @@ class MasterTimelineViewController: UITableViewController, UndoableCommandRunner refreshControl!.tintColor = .clear progressBarViewController.view.backgroundColor = .clear + progressBarViewController.view.translatesAutoresizingMaskIntoConstraints = false refreshProgressItemButton = UIBarButtonItem(customView: progressBarViewController.view) configureToolbar()