diff options
| author | Christian Cleberg <[email protected]> | 2026-08-07 01:44:26 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-08-07 01:44:26 -0500 |
| commit | 1c4e968c31ee451666a65e05c762c9422c768426 (patch) | |
| tree | 7137471dd7cdd5583db4ffbead31414497c431a9 /Hutch/App/AppState.swift | |
| parent | a0ed11a3c4ddb2f532fa70884dc2829a23a5eec8 (diff) | |
| download | hutch-1c4e968c31ee451666a65e05c762c9422c768426.tar.gz hutch-1c4e968c31ee451666a65e05c762c9422c768426.tar.bz2 hutch-1c4e968c31ee451666a65e05c762c9422c768426.zip | |
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.
Diffstat (limited to 'Hutch/App/AppState.swift')
| -rw-r--r-- | Hutch/App/AppState.swift | 2 |
1 files changed, 1 insertions, 1 deletions
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 { |
