diff --git a/ShadowsocksX-NG2/App/UI/Workspace/SidebarRow.swift b/ShadowsocksX-NG2/App/UI/Servers/ServerSidebarRow.swift similarity index 87% rename from ShadowsocksX-NG2/App/UI/Workspace/SidebarRow.swift rename to ShadowsocksX-NG2/App/UI/Servers/ServerSidebarRow.swift index a4e3fbb0..dce1091b 100644 --- a/ShadowsocksX-NG2/App/UI/Workspace/SidebarRow.swift +++ b/ShadowsocksX-NG2/App/UI/Servers/ServerSidebarRow.swift @@ -1,10 +1,10 @@ import SwiftUI -/// 侧栏树行(issue #41):来源标识、有效性提示、活动目标标记与右键菜单。 -/// 数据来自目录工作流 module 的树 projection;激活经 seam 的 typed command, -/// 活动目标标记由父视图传入(运行时事实,不进目录 projection)。删除一律 -/// 交父视图确认弹窗(空手动组单次、非空二次,GLOSSARY.md)。 -struct SidebarRow: View { +/// 服务器子视图侧栏的树行(issue #41):来源标识、有效性提示、活动目标标记 +/// 与右键菜单。数据来自目录工作流 module 的树 projection;激活经 seam 的 +/// typed command,活动目标标记由父视图传入(运行时事实,不进目录 projection)。 +/// 删除一律交父视图确认弹窗(空手动组单次、非空二次,GLOSSARY.md)。 +struct ServerSidebarRow: View { let node: CatalogTreeNode let workflow: CatalogWorkflow /// 激活反馈共享状态:命令经它发出(单飞互斥、结果记录在会话反馈里)。 diff --git a/ShadowsocksX-NG2/App/UI/Servers/ServersView.swift b/ShadowsocksX-NG2/App/UI/Servers/ServersView.swift index b084d760..b0e7d67d 100644 --- a/ShadowsocksX-NG2/App/UI/Servers/ServersView.swift +++ b/ShadowsocksX-NG2/App/UI/Servers/ServersView.swift @@ -12,7 +12,7 @@ struct ServersView: View { /// 激活命令都经它发出。 let activation: ActivationFeedbackState /// 活动目标标记:父视图传入的运行时事实,不进目录 projection(与 - /// SidebarRow/ServerDetailView 的传参先例同法)。 + /// ServerSidebarRow/ServerDetailView 的传参先例同法)。 let activeTargetID: NodeID? @Binding var selection: NodeID? /// 分组折叠状态:组合根持有的共享对象(与首页目标树同源),跨 destination @@ -154,7 +154,7 @@ struct ServersView: View { .help(expansion.isCollapsed(node.id) ? "展开" : "收起") } } - SidebarRow( + ServerSidebarRow( node: node, workflow: workflow, activation: activation,