feat(client): 节点列表防误触 — 已连接时切换节点先弹确认

未连接(off)点节点直接选→跳连接页(无破坏性,不弹框);已连接/连接中点其他
节点会断开重连,先弹确认框(标题含目标节点名),取消则维持当前连接。新增
nodeSwitchTitle/Body/Confirm 三条文案 + node_connect_confirm_test 覆盖 off/on 两路。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
wangjia
2026-06-29 10:11:20 +08:00
parent 6788501e4a
commit 73da0bc9a2
5 changed files with 156 additions and 2 deletions
+4
View File
@@ -52,6 +52,10 @@ abstract class AppText {
String get chooseNode;
String get searchPh;
String get smartSelect;
// 已连接时点其他节点 → 切换确认(防误触)
String nodeSwitchTitle(String name);
String get nodeSwitchBody;
String get nodeSwitchConfirm;
String get smartSub;
String get recommended;
+6
View File
@@ -64,6 +64,12 @@ class StringsEn extends AppText {
@override
String get smartSelect => 'Smart select';
@override
String nodeSwitchTitle(String name) => 'Switch to $name?';
@override
String get nodeSwitchBody => 'This disconnects the current link and reconnects to this node.';
@override
String get nodeSwitchConfirm => 'Switch';
@override
String get smartSub => 'Picks the best node for your network';
@override
String get recommended => 'Recommended';
+6
View File
@@ -63,6 +63,12 @@ class StringsZh extends AppText {
@override
String get smartSelect => '智能选择';
@override
String nodeSwitchTitle(String name) => '切换到「$name」?';
@override
String get nodeSwitchBody => '当前连接将断开并重连到该节点。';
@override
String get nodeSwitchConfirm => '切换';
@override
String get smartSub => '根据当前网络环境,自动选择最优节点';
@override
String get recommended => '推荐';