fix network

This commit is contained in:
anlicheng 2026-03-25 16:27:48 +08:00
parent dee3e26c33
commit 906456a543

View File

@ -242,21 +242,47 @@ struct NetworkDeviceGroupView: View {
@Environment(AppContext.self) private var appContext: AppContext
@State private var selectedId: Int?
//
private let sidebarWidth: CGFloat = 240
var body: some View {
NavigationSplitView {
List(appContext.networkContext.nodeList, id: \.id, selection: $selectedId) { node in
NetworkNodeHeadView(node: node)
.tag(node.id)
HStack(spacing: 0) {
// --- 1. (Sidebar) ---
VStack(alignment: .leading, spacing: 0) {
// macOS 绿
// WindowStyle .hiddenTitleBar Padding
Color.clear.frame(height: 28)
List(appContext.networkContext.nodeList, id: \.id, selection: $selectedId) { node in
NetworkNodeHeadView(node: node)
// HStack tag List selection
.tag(node.id)
.listRowSeparator(.hidden)
}
.listStyle(.inset) // 使 inset
.scrollContentBackground(.hidden) //
}
.listStyle(.sidebar)
.navigationSplitViewColumnWidth(min: 200, ideal: 220)
} detail: {
if let selectedNode = appContext.networkContext.getNode(id: selectedId) {
NetworkNodeDetailView(node: selectedNode)
} else {
ContentUnavailableView("选择成员设备", systemImage: "macbook.and.iphone", description: Text("查看详细网络信息和服务"))
.frame(width: sidebarWidth)
Divider() // 线
// --- 2. (Detail) ---
ZStack {
if let selectedNode = appContext.networkContext.getNode(id: selectedId) {
NetworkNodeDetailView(node: selectedNode)
.transition(.opacity.animation(.easeInOut(duration: 0.2)))
} else {
ContentUnavailableView(
"选择成员设备",
systemImage: "macbook.and.iphone",
description: Text("查看详细网络信息和服务")
)
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(Color(nsColor: .windowBackgroundColor)) // 使
}
.ignoresSafeArea() //
.onAppear {
if selectedId == nil {
selectedId = appContext.networkContext.firstNodeId()