This commit is contained in:
mrFq1
2023-04-25 14:51:23 +08:00
commit f3141fbffe
39 changed files with 3793 additions and 0 deletions
+49
View File
@@ -0,0 +1,49 @@
//
// ContentView.swift
// ClashX Dashboard
//
//
import SwiftUI
struct ContentView: View {
private let runningState = NotificationCenter.default.publisher(for: .init("ClashRunningStateChanged"))
@State private var isRunning = false
var body: some View {
Group {
if !isRunning {
APISettingView()
// .presentedWindowToolbarStyle(.expanded)
} else {
NavigationView {
SidebarView()
EmptyView()
}
}
}
.toolbar {
ToolbarItem(placement: .navigation) {
Button {
NSApp.keyWindow?.firstResponder?.tryToPerform(#selector(NSSplitViewController.toggleSidebar(_:)), with: nil)
} label: {
Image(systemName: "sidebar.left")
}
.help("Toggle Sidebar")
.disabled(!isRunning)
}
}
.onReceive(runningState) { _ in
isRunning = ConfigManager.shared.isRunning
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}