Commit 730b81a465

730b81a465614a5bf198a48a7eededa02561dd1a

parent: ac7de0ce3c

Unsigned

cmc <hello@cleberg.net> · 2026-04-20 17:31 UTC

fix: change failed builds card on home tab to navigate to builds tab instead of implementing its own view

Fixes: https://todo.sr.ht/~ccleberg/hutch/66

Layout: unified · split

Hutch.xcodeproj/project.pbxproj +8 −8
@@ -517,7 +517,7 @@
517517 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
518518 CODE_SIGN_ENTITLEMENTS = Hutch/Hutch.entitlements;
519519 CODE_SIGN_STYLE = Automatic;
520 CURRENT_PROJECT_VERSION = 79;
520 CURRENT_PROJECT_VERSION = 80;
521521 DEVELOPMENT_TEAM = ZCNAX3VL9D;
522522 ENABLE_PREVIEWS = YES;
523523 GENERATE_INFOPLIST_FILE = YES;
@@ -534,7 +534,7 @@
534534 "$(inherited)",
535535 "@executable_path/Frameworks",
536536 );
537 MARKETING_VERSION = 3.1.11;
537 MARKETING_VERSION = 3.1.12;
538538 PRODUCT_BUNDLE_IDENTIFIER = net.cleberg.Hutch;
539539 PRODUCT_NAME = "$(TARGET_NAME)";
540540 STRING_CATALOG_GENERATE_SYMBOLS = YES;
@@ -554,7 +554,7 @@
554554 ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
555555 CODE_SIGN_ENTITLEMENTS = Hutch/Hutch.entitlements;
556556 CODE_SIGN_STYLE = Automatic;
557 CURRENT_PROJECT_VERSION = 79;
557 CURRENT_PROJECT_VERSION = 80;
558558 DEVELOPMENT_TEAM = ZCNAX3VL9D;
559559 ENABLE_PREVIEWS = YES;
560560 GENERATE_INFOPLIST_FILE = YES;
@@ -571,7 +571,7 @@
571571 "$(inherited)",
572572 "@executable_path/Frameworks",
573573 );
574 MARKETING_VERSION = 3.1.11;
574 MARKETING_VERSION = 3.1.12;
575575 PRODUCT_BUNDLE_IDENTIFIER = net.cleberg.Hutch;
576576 PRODUCT_NAME = "$(TARGET_NAME)";
577577 STRING_CATALOG_GENERATE_SYMBOLS = YES;
@@ -634,7 +634,7 @@
634634 APPLICATION_EXTENSION_API_ONLY = YES;
635635 CODE_SIGN_ENTITLEMENTS = HutchWidgetExtension/HutchWidgetExtension.entitlements;
636636 CODE_SIGN_STYLE = Automatic;
637 CURRENT_PROJECT_VERSION = 79;
637 CURRENT_PROJECT_VERSION = 80;
638638 DEVELOPMENT_TEAM = ZCNAX3VL9D;
639639 GENERATE_INFOPLIST_FILE = NO;
640640 INFOPLIST_FILE = HutchWidgetExtension/Info.plist;
@@ -644,7 +644,7 @@
644644 "@executable_path/Frameworks",
645645 "@executable_path/../../Frameworks",
646646 );
647 MARKETING_VERSION = 3.1.11;
647 MARKETING_VERSION = 3.1.12;
648648 PRODUCT_BUNDLE_IDENTIFIER = net.cleberg.Hutch.HutchWidgetExtension;
649649 PRODUCT_NAME = "$(TARGET_NAME)";
650650 SKIP_INSTALL = YES;
@@ -663,7 +663,7 @@
663663 APPLICATION_EXTENSION_API_ONLY = YES;
664664 CODE_SIGN_ENTITLEMENTS = HutchWidgetExtension/HutchWidgetExtension.entitlements;
665665 CODE_SIGN_STYLE = Automatic;
666 CURRENT_PROJECT_VERSION = 79;
666 CURRENT_PROJECT_VERSION = 80;
667667 DEVELOPMENT_TEAM = ZCNAX3VL9D;
668668 GENERATE_INFOPLIST_FILE = NO;
669669 INFOPLIST_FILE = HutchWidgetExtension/Info.plist;
@@ -673,7 +673,7 @@
673673 "@executable_path/Frameworks",
674674 "@executable_path/../../Frameworks",
675675 );
676 MARKETING_VERSION = 3.1.11;
676 MARKETING_VERSION = 3.1.12;
677677 PRODUCT_BUNDLE_IDENTIFIER = net.cleberg.Hutch.HutchWidgetExtension;
678678 PRODUCT_NAME = "$(TARGET_NAME)";
679679 SKIP_INSTALL = YES;
Hutch/Views/Home/HomeView.swift +3 −2
@@ -135,8 +135,8 @@ struct HomeView: View {
135135
136136 private func buildsSection(_ viewModel: HomeViewModel) -> some View {
137137 Section("Builds") {
138 NavigationLink {
139 BuildListView()
138 Button {
139 appState.navigateToBuildsList()
140140 } label: {
141141 HomeSummaryRow(
142142 title: buildsTitle(viewModel),
@@ -146,6 +146,7 @@ struct HomeView: View {
146146 emphasis: .monitoring
147147 )
148148 }
149 .buttonStyle(.plain)
149150 .themedRow()
150151 }
151152 }
HutchTests/AppStateTests.swift +11
@@ -34,6 +34,17 @@ struct AppStateTests {
3434 #expect(appState.pendingTabNavigation == .systemStatus)
3535 }
3636
37 @Test
38 @MainActor
39 func navigateToBuildsListSelectsBuildsTabAndQueuesBuildsNavigation() {
40 let appState = AppState()
41
42 appState.navigateToBuildsList()
43
44 #expect(appState.selectedTab == .builds)
45 #expect(appState.pendingTabNavigation == .builds)
46 }
47
3748 @Test
3849 @MainActor
3950 func navigationHelpersQueueExpectedTargets() {