From 4a296930fa0ebb92519e8d61e3e37935d57121d5 Mon Sep 17 00:00:00 2001 From: Qiu Yuzhou Date: Thu, 1 Oct 2026 19:18:59 +0800 Subject: [PATCH] ui(app): update labels for unmatched rule actions in Picker components --- ShadowsocksX-NG2/App/HomeView.swift | 15 +++++++++------ ShadowsocksX-NG2/App/ProxyStatusMenu.swift | 2 +- ShadowsocksX-NG2/Domain/ProxyRule.swift | 4 ++-- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/ShadowsocksX-NG2/App/HomeView.swift b/ShadowsocksX-NG2/App/HomeView.swift index 3dfae0d1..ec8efc89 100644 --- a/ShadowsocksX-NG2/App/HomeView.swift +++ b/ShadowsocksX-NG2/App/HomeView.swift @@ -161,14 +161,17 @@ private struct ModeCard: View { .labelsHidden() .frame(maxWidth: 480, alignment: .leading) if control.snapshot.proxyMode == .rule { - Picker("未匹配默认动作", selection: ruleDefaultActionBinding) { - ForEach(RuleDefaultAction.allCases, id: \.self) { action in - Text(action.label).tag(action) + HStack(spacing: 8) { + Text("未匹配规则时") + Picker("未匹配规则时", selection: ruleDefaultActionBinding) { + ForEach(RuleDefaultAction.allCases, id: \.self) { action in + Text(action.label).tag(action) + } } + .pickerStyle(.segmented) + .labelsHidden() + .frame(maxWidth: 480, alignment: .leading) } - .pickerStyle(.segmented) - .labelsHidden() - .frame(maxWidth: 480, alignment: .leading) } Text(modeDescription(control.snapshot.proxyMode)) .font(.callout) diff --git a/ShadowsocksX-NG2/App/ProxyStatusMenu.swift b/ShadowsocksX-NG2/App/ProxyStatusMenu.swift index 70168c63..1d615aae 100644 --- a/ShadowsocksX-NG2/App/ProxyStatusMenu.swift +++ b/ShadowsocksX-NG2/App/ProxyStatusMenu.swift @@ -72,7 +72,7 @@ struct ProxyStatusMenu: View { // 规则模式子选项(issue #63):仅规则模式呈现。 if snapshot.proxyMode == .rule { - Picker("未匹配默认动作", selection: ruleDefaultActionBinding) { + Picker("未匹配规则时", selection: ruleDefaultActionBinding) { ForEach(RuleDefaultAction.allCases, id: \.self) { action in Text(action.label).tag(action) } diff --git a/ShadowsocksX-NG2/Domain/ProxyRule.swift b/ShadowsocksX-NG2/Domain/ProxyRule.swift index f2f16ba3..886e2277 100644 --- a/ShadowsocksX-NG2/Domain/ProxyRule.swift +++ b/ShadowsocksX-NG2/Domain/ProxyRule.swift @@ -18,8 +18,8 @@ enum RuleDefaultAction: String, Codable, CaseIterable, Equatable, Hashable, Send var label: String { switch self { - case .proxyWhenUnmatched: "未匹配时代理" - case .directWhenUnmatched: "未匹配时直连" + case .proxyWhenUnmatched: "代理" + case .directWhenUnmatched: "直连" } }