summaryrefslogtreecommitdiff
path: root/Hutch/Views/Home
Commit message (Collapse)AuthorAgeFilesLines
* fix: collapse work inbox messages into thread summariesv3.2.0Christian Cleberg2026-04-201-3/+45
|
* fix: add mark all read actions and avoid resending unchanged repo metadataChristian Cleberg2026-04-201-0/+14
|
* feat: user-defined time period for recent builds cardChristian Cleberg2026-04-202-33/+78
| | | | | | | | | - limit Home failed-build counts to a configurable lookback window and add the setting under Behavior. - make the Recent and Builds rows fully tappable across the entire cell and add coverage for the new failed-build filtering. Fixes: https://todo.sr.ht/~ccleberg/hutch/67
* fix: change failed builds card on home tab to navigate to builds tab instead ↵Christian Cleberg2026-04-201-2/+3
| | | | | | of implementing its own view Fixes: https://todo.sr.ht/~ccleberg/hutch/66
* fix: remove prototype screens from developer menuv3.1.6Christian Cleberg2026-04-142-8/+1
| | | | | | | | - removed prototype screens - limited Recent section to 3 items - added initial support for tips Fixes: https://todo.sr.ht/~ccleberg/hutch/65
* fix: centralize URLs, tighten models, and polish SwiftUI bindingsv3.1.3Christian Cleberg2026-04-131-2/+2
| | | | | | | | | | | | | | | | | | | | - Add shared HutchDeepLinkURL constants for app, widgets, and tests. - Bump marketing version to 3.1.2 and build to 70 (app + widget extension). - Point Hutch stats default base URL at HutchStatsAPI; add SRHTWebURL status incident feed and reuse it from SystemStatusService. - Group Project into Metadata and Resources; split ContributionStatsResponse into StatsWindow and StatsTotals with updated decoding and tests. - Replace @Bindable usage with explicit Bindings in Profile, Projects list, and repository ACL flows; simplify Home pinned-item helper; add no-op bodies on cancel alert buttons where the compiler requires a statement. - Move repository row build-status indicator next to the relative-updated caption and reserve a fixed 8×8 slot so the row does not jump when status loads. - Use NSString.lastPathComponent for build artifact filenames; collapse duplicate ACL error branches; minor HutchStats HTTP and XMLParserDelegate cleanups. - Point widgets at HutchDeepLinkURL helpers; align tests with the new response and URL types.
* feat(theme): AMOLED true-black rows via themedRow()Christian Cleberg2026-04-131-0/+6
| | | | | | | | | | Apply listRowBackground(Color.black) per row in AMOLED mode using ThemedRowStyle and themedRow() across Lists and Forms. Use themedList() for scroll/grouped backgrounds. Treat segmented and clear list rows with isAMOLED-aware listRowBackground where Color.clear was required. Removes reliance on UIKit appearance for list cells on iOS 16+. Implements: https://todo.sr.ht/~ccleberg/hutch/24
* perf: reduce redundant fetches and improve list render efficiencyChristian Cleberg2026-04-132-1/+9
| | | | | | | | | | | | | | | | - Remove no-op per-row task from RepositoryListView; loadMoreIfNeeded is a stub for repos so each row was allocating a Task that did nothing - Fix BuildListView auto-refresh stopping permanently after navigating away; startAutoRefresh now runs unconditionally on task so it restarts on every reappear, not just first load - Add lastRefreshed tracking to HomeViewModel with a needsRefresh(after:) helper; HomeView and WorkView scene-activation handlers now skip loadDashboard() if the data is less than 60 seconds old - Add 120-second TTL to repository build status refresh; statuses are no longer re-fetched on every tab appear, only when stale or when the user explicitly pulls to refresh (forceRefresh: true) Implements: https://todo.sr.ht/~ccleberg/hutch/56
* release: v3.0.0 — navigation overhaul, Work view, and multi-pin supportv3.0.0Christian Cleberg2026-04-135-738/+746
| | | | | | | | | | | | | | | | | | | | Reworks the app's core navigation and home screen for v3.0.0: - Replace Inbox with Work view: unified dashboard showing unread threads and assigned tickets, with All/Unread/Assigned scope picker - Overhaul Home screen: redesigned with pinned items grid (trackers, repos, mailing lists, users), recent activity section, and system status banner; backed by HomePinStore supporting all resource types - Simplify navigation bars across list screens: default toolbar shows only the primary action (+) and an overflow menu (…); pin, share, and select moved into the overflow menu; selection mode gets its own nav bar with Cancel / "N Selected" / All - Consolidate repo detail toolbars: pin and share moved into the existing actions menu for both Git and Mercurial detail views - Add recent activity tracking via RecentActivityStore - Add work and inbox deep link aliases (hutch://work, hutch://inbox) Implements: https://todo.sr.ht/~ccleberg/hutch/55
* feat: add power user actionsChristian Cleberg2026-04-131-9/+0
| | | | | | Implements: https://todo.sr.ht/~ccleberg/hutch/52 Implements: https://todo.sr.ht/~ccleberg/hutch/53 Implements: https://todo.sr.ht/~ccleberg/hutch/54
* feat: add multi-account supportChristian Cleberg2026-04-122-11/+26
| | | | | | Implements: https://todo.sr.ht/~ccleberg/hutch/49 Implements: https://todo.sr.ht/~ccleberg/hutch/50 Implements: https://todo.sr.ht/~ccleberg/hutch/51
* feat: polish read-only project views and home integrationChristian Cleberg2026-04-122-24/+55
| | | | | | Refs: https://todo.sr.ht/~ccleberg/hutch/36 Refs: https://todo.sr.ht/~ccleberg/hutch/37 Refs: https://todo.sr.ht/~ccleberg/hutch/38
* feat: add build log search and jump-to-error navigationChristian Cleberg2026-04-121-0/+8
| | | | | Implements: https://todo.sr.ht/~ccleberg/hutch/29 Implements: https://todo.sr.ht/~ccleberg/hutch/30
* feat: add projects list, detail view, and home pinningChristian Cleberg2026-04-122-33/+19
| | | | | | Implements: https://todo.sr.ht/~ccleberg/hutch/26 Implements: https://todo.sr.ht/~ccleberg/hutch/27 Implements: https://todo.sr.ht/~ccleberg/hutch/28
* feat: add theme and high-density display modesChristian Cleberg2026-04-121-0/+1
| | | | | Refs: https://todo.sr.ht/~ccleberg/hutch/24 Implements: https://todo.sr.ht/~ccleberg/hutch/25
* feat: improve Home structure and navigationv2.16.0Christian Cleberg2026-04-122-60/+210
| | | | | | implements: https://todo.sr.ht/~ccleberg/hutch/14 implements: https://todo.sr.ht/~ccleberg/hutch/15 implements: https://todo.sr.ht/~ccleberg/hutch/16
* add shortcuts widgets and power-user workflowsv2.15.0Christian Cleberg2026-04-121-0/+22
|
* improve home attention flows and cross-linkingv2.14.0Christian Cleberg2026-04-122-73/+627
|
* harden system status and app reliabilityv2.13.1Christian Cleberg2026-04-122-41/+35
|
* ensure clicking into status from home returns to homeChristian Cleberg2026-04-111-2/+2
|
* Add SourceHut system status screen and home disruption bannerChristian Cleberg2026-04-112-2/+65
|
* Fix several bugs ahead of 2.6.1v2.6.1Christian Cleberg2026-04-011-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | FileTreeView: when wrap is OFF, activate an explicit width constraint on the code container derived from the widest line, giving the horizontal scroll view a defined content size. Previously the constraint was deactivated with nothing to replace it, making horizontal scrolling unreliable. Also set horizontalScrollView.isScrollEnabled = !wrapLines to prevent gesture conflicts when wrap is ON. InboxView: remove the unnecessary loadThreads() network call fired after markAllThreadsRead(). The threads array is already updated optimistically and read state is persisted via InboxReadStateStore, so the refetch was redundant and caused a brief loading flash. HomeView: add scenePhase onChange handler to refresh dashboard data when the app returns to the foreground, matching the existing pattern in InboxView. DiffView: wrap DiffBlockView content in a horizontal ScrollView so long diff lines are readable. Switch inner VStack to LazyVStack for better performance on large diffs. SettingsView: replace direct UserDefaults access in behaviorSection with @AppStorage, consistent with the rest of the app.
* fix: fixed inbox's inconsistent UX and adds a Mark All Read buttonChristian Cleberg2026-04-011-15/+13
| | | | Fixes: https://todo.sr.ht/~ccleberg/Hutch/10
* v2.4.0: widgetsv2.4.0Christian Cleberg2026-03-241-35/+92
|
* fix: log errors in HomeViewModel's silent catch blocksChristian Cleberg2026-03-241-0/+6
|
* feat: swipe actions on tickets, pastes, builds, and home dashboardChristian Cleberg2026-03-222-18/+219
|
* v2.1: bundled polish and fixesChristian Cleberg2026-03-191-3/+3
|
* feat: implement support for projects, lists, and pastesChristian Cleberg2026-03-192-4/+289
|
* feat: add support for reading inbox messages (emails) and replying in-appChristian Cleberg2026-03-191-2/+23
|
* add Home dashboard and repository build status indicatorsChristian Cleberg2026-03-182-0/+740