summaryrefslogtreecommitdiff
path: root/Hutch/App/RootView.swift
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-03-18 22:56:34 -0500
committerChristian Cleberg <[email protected]>2026-03-18 22:56:34 -0500
commitffc0ef0988b5e7d01951c23af85a1cf026b3da9f (patch)
tree868cef24e91ddaa5e7d5e39362d97ec6a94107c9 /Hutch/App/RootView.swift
parented48e72520c51e4635cd3840dbc569bdd74c950f (diff)
downloadhutch-ffc0ef0988b5e7d01951c23af85a1cf026b3da9f.tar.gz
hutch-ffc0ef0988b5e7d01951c23af85a1cf026b3da9f.tar.bz2
hutch-ffc0ef0988b5e7d01951c23af85a1cf026b3da9f.zip
add Home dashboard and repository build status indicators
Diffstat (limited to 'Hutch/App/RootView.swift')
-rw-r--r--Hutch/App/RootView.swift15
1 files changed, 13 insertions, 2 deletions
diff --git a/Hutch/App/RootView.swift b/Hutch/App/RootView.swift
index 7af162d..79411ed 100644
--- a/Hutch/App/RootView.swift
+++ b/Hutch/App/RootView.swift
@@ -6,13 +6,15 @@ struct RootView: View {
@Environment(AppState.self) private var appState
enum Tab: Hashable {
+ case home
case repositories
case builds
case tickets
case settings
}
- @State private var selectedTab: Tab = .repositories
+ @State private var selectedTab: Tab = .home
+ @State private var homePath = NavigationPath()
@State private var repoPath = NavigationPath()
@State private var buildsPath = NavigationPath()
@State private var ticketsPath = NavigationPath()
@@ -47,6 +49,14 @@ struct RootView: View {
private var tabContent: some View {
TabView(selection: $selectedTab) {
+ NavigationStack(path: $homePath) {
+ HomeView()
+ }
+ .tag(Tab.home)
+ .tabItem {
+ Label("Home", systemImage: "house")
+ }
+
NavigationStack(path: $repoPath) {
RepositoryListView()
}
@@ -106,10 +116,11 @@ struct RootView: View {
case .launching:
break
case .unauthenticated:
+ homePath = NavigationPath()
repoPath = NavigationPath()
buildsPath = NavigationPath()
ticketsPath = NavigationPath()
- selectedTab = .repositories
+ selectedTab = .home
isResolvingDeepLink = false
case .authenticated:
consumePendingDeepLinkIfPossible(appState.pendingDeepLink)