summaryrefslogtreecommitdiff
path: root/Hutch/Views/Activity/ActivityView.swift
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-07-16 00:29:34 -0500
committerChristian Cleberg <[email protected]>2026-07-16 00:29:34 -0500
commit6898bc3fc00decee7224895ea75908daf0f97f59 (patch)
treeee4cdf2760d45586d20c106212a6cfb1b7d0d9aa /Hutch/Views/Activity/ActivityView.swift
parent2514b58a96ccb73b4feea8f74a2367c72ba824c8 (diff)
downloadhutch-6898bc3fc00decee7224895ea75908daf0f97f59.tar.gz
hutch-6898bc3fc00decee7224895ea75908daf0f97f59.tar.bz2
hutch-6898bc3fc00decee7224895ea75908daf0f97f59.zip
fix: blank mailing list from Projects, swipe flicker, hidden upload
Three problems from manual testing. Opening a mailing list from More → Projects showed a blank screen, while the same tap on a project pinned to Home worked. handleTabNavigation reset the target path and appended to it two Task.yields later. When the target tab is already on screen — Projects lives under More — the reset starts an animated pop of the view the user is standing on and the appends land mid-animation. From Home the tab actually changes, so the More stack is quiescent and the appends land cleanly. Each case now builds its path and assigns it once, so SwiftUI gets a single diff with nothing to race. Destructive swipe actions made the row vanish and spring back while the confirmation was still up. role: .destructive makes SwiftUI perform the row removal on activation, which allowsFullSwipe: false does not prevent — the report was a tap, not a full swipe. These buttons only record pending state and wait for an answer, so they are plain buttons tinted red instead. Six sites: the two added here, plus trackers, pastes, and tracker ACLs and labels, which had the same flicker already. The artifacts upload control was invisible. It was declared as a toolbar item from a view that is a segment inside RepositoryDetailView's tab switch rather than its own navigation destination, so it never reached the navigation bar. It is a row in the list now, and also an action on the empty state — the overlay covers the list, and a repository with no artifacts is precisely the one that needs uploading.
Diffstat (limited to 'Hutch/Views/Activity/ActivityView.swift')
0 files changed, 0 insertions, 0 deletions