poll subscriptions more reactively

This commit is contained in:
Alek Michelson 2026-04-10 00:50:10 -04:00
parent 049f194304
commit 0a968eb191

View file

@ -19,18 +19,14 @@ struct SubscriptionListView: View {
if #available(iOS 15.0, *) {
subscriptionList
.refreshable {
subscriptionsModel.subscriptions.forEach { subscription in
subscriptionManager.poll(subscription)
}
pollSubscriptions()
}
} else {
subscriptionList
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button {
subscriptionsModel.subscriptions.forEach { subscription in
subscriptionManager.poll(subscription)
}
pollSubscriptions()
} label: {
Image(systemName: "arrow.clockwise")
}
@ -81,6 +77,16 @@ struct SubscriptionListView: View {
.sheet(isPresented: $showingAddDialog) {
SubscriptionAddView(isShowing: $showingAddDialog)
}
.onAppear {
// Ensures subscription count stays up to date, so a pull to refresh isn't required
pollSubscriptions()
}
}
private func pollSubscriptions() {
subscriptionsModel.subscriptions.forEach { subscription in
subscriptionManager.poll(subscription)
}
}
}