From 1c4e968c31ee451666a65e05c762c9422c768426 Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Fri, 7 Aug 2026 01:44:26 -0500 Subject: Take inbox unread count off pull-to-refresh path (#9) The inbox count paginates every thread of every subscribed list (~25s), and .refreshable binds the spinner to loadDashboard returning, so pull held for the whole time. Refresh the count in a cancellable background task that updates the badge when it lands, so pull returns once the fast branches settle. The widget / App Intents snapshot refresh, which builds from a throwaway view model, opts back into awaiting inbox so its count stays accurate. --- Hutch/App/AppState.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Hutch/App/AppState.swift') diff --git a/Hutch/App/AppState.swift b/Hutch/App/AppState.swift index ad31c5c..a526afd 100644 --- a/Hutch/App/AppState.swift +++ b/Hutch/App/AppState.swift @@ -623,7 +623,7 @@ final class AppState { defaults: accountDefaults, accountID: activeAccountID ) - await viewModel.loadDashboard() + await viewModel.loadDashboard(awaitInboxUnread: true) } private func clearWebData() async { -- cgit v1.2.3