@@ -1288,13 +1288,13 @@ function language(v, en, cn) {
1288
1288
}
1289
1289
}
1290
1290
} ) ;
1291
- var O = host . Menu . buildFromTemplate ( [ {
1292
- label : language ( state . language , "Dashboard" , " 仪表盘") ,
1291
+ var O_CN = host . Menu . buildFromTemplate ( [ {
1292
+ label : " 仪表盘",
1293
1293
click : Launch
1294
1294
} , {
1295
1295
type : "separator"
1296
1296
} , {
1297
- label : language ( state . language , "TUN Mode" , "TUN 模式") ,
1297
+ label : "TUN 模式" ,
1298
1298
type : "checkbox" ,
1299
1299
id : "tun" ,
1300
1300
enabled : ! 1 ,
@@ -1303,7 +1303,7 @@ function language(v, en, cn) {
1303
1303
g . webContents . send ( "tun-changed" , t )
1304
1304
}
1305
1305
} , {
1306
- label : language ( state . language , "Mixin" , " 混合配置") ,
1306
+ label : " 混合配置",
1307
1307
type : "checkbox" ,
1308
1308
id : "mixin" ,
1309
1309
enabled : ! 1 ,
@@ -1314,19 +1314,19 @@ function language(v, en, cn) {
1314
1314
} , {
1315
1315
type : "separator"
1316
1316
} , {
1317
- label : language ( state . language , "Proxy Mode" , " 代理模式") ,
1317
+ label : " 代理模式",
1318
1318
id : "mode" ,
1319
1319
enabled : ! 1
1320
1320
} , {
1321
- label : language ( state . language , "Global" , " 全局") ,
1321
+ label : " 全局",
1322
1322
type : "radio" ,
1323
1323
id : "mode-global" ,
1324
1324
enabled : ! 1 ,
1325
1325
click : function ( ) {
1326
1326
return g . webContents . send ( "mode-changed" , "global" )
1327
1327
}
1328
1328
} , {
1329
- label : language ( state . language , "Rule" , " 规则") ,
1329
+ label : " 规则",
1330
1330
type : "radio" ,
1331
1331
id : "mode-rule" ,
1332
1332
enabled : state . isReady ,
@@ -1335,15 +1335,15 @@ function language(v, en, cn) {
1335
1335
return g . webContents . send ( "mode-changed" , "rule" )
1336
1336
}
1337
1337
} , {
1338
- label : language ( state . language , "Direct" , " 直连") ,
1338
+ label : " 直连",
1339
1339
type : "radio" ,
1340
1340
id : "mode-direct" ,
1341
1341
enabled : ! 1 ,
1342
1342
click : function ( ) {
1343
1343
return g . webContents . send ( "mode-changed" , "direct" )
1344
1344
}
1345
1345
} , {
1346
- label : language ( state . language , "Script" , " 脚本") ,
1346
+ label : " 脚本",
1347
1347
type : "radio" ,
1348
1348
id : "mode-script" ,
1349
1349
enabled : ! 1 ,
@@ -1353,55 +1353,157 @@ function language(v, en, cn) {
1353
1353
} , {
1354
1354
type : "separator"
1355
1355
} , {
1356
- label : language ( state . language , "More" , " 更多") ,
1356
+ label : " 更多",
1357
1357
submenu : [ {
1358
- label : language ( state . language , "Toggle DevTools" , " 切换Dev工具") ,
1358
+ label : " 切换Dev工具",
1359
1359
click : function ( ) {
1360
1360
g . webContents . toggleDevTools ( )
1361
1361
}
1362
1362
} , {
1363
- label : language ( state . language , "Move Dashboard To Nearest Monitor" , " 将仪表板移至最近的显示器") ,
1363
+ label : " 将仪表板移至最近的显示器",
1364
1364
click : function ( ) {
1365
1365
g . setBounds ( B ( g . getBounds ( ) ) ) , Launch ( )
1366
1366
}
1367
1367
} , {
1368
- label : language ( state . language , "Restart" , " 重启") ,
1368
+ label : " 重启",
1369
1369
click : function ( ) {
1370
1370
if ( g . isMaximized ) {
1371
1371
g . unmaximize ( ) ;
1372
1372
}
1373
1373
host . app . relaunch ( ) , host . app . exit ( 0 )
1374
1374
}
1375
1375
} , {
1376
- label : language ( state . language , "Force Quit" , " 强制退出") ,
1376
+ label : " 强制退出",
1377
1377
click : function ( ) {
1378
1378
host . app . isQuiting = ! 0 , host . app . quit ( )
1379
1379
}
1380
1380
} ]
1381
1381
} , {
1382
1382
type : "separator"
1383
1383
} , {
1384
- label : language ( state . language , "Quit" , " 退出") ,
1384
+ label : " 退出",
1385
1385
click : function ( ) {
1386
1386
if ( g . isMaximized ) {
1387
1387
g . unmaximize ( ) ;
1388
1388
}
1389
1389
return g . webContents . send ( "app-exit" )
1390
1390
}
1391
+ } ] ) ;
1392
+
1393
+ var O_EN = host . Menu . buildFromTemplate ( [ {
1394
+ label : "Dashboard" ,
1395
+ click : Launch
1396
+ } , {
1397
+ type : "separator"
1398
+ } , {
1399
+ label : "TUN Mode" ,
1400
+ type : "checkbox" ,
1401
+ id : "tun" ,
1402
+ enabled : ! 1 ,
1403
+ click : function ( e ) {
1404
+ var t = e . checked ;
1405
+ g . webContents . send ( "tun-changed" , t )
1406
+ }
1407
+ } , {
1408
+ label : "Mixin" ,
1409
+ type : "checkbox" ,
1410
+ id : "mixin" ,
1411
+ enabled : ! 1 ,
1412
+ click : function ( e ) {
1413
+ var t = e . checked ;
1414
+ g . webContents . send ( "mixin-changed" , t )
1415
+ }
1416
+ } , {
1417
+ type : "separator"
1418
+ } , {
1419
+ label : "Proxy Mode" ,
1420
+ id : "mode" ,
1421
+ enabled : ! 1
1422
+ } , {
1423
+ label : "Global" ,
1424
+ type : "radio" ,
1425
+ id : "mode-global" ,
1426
+ enabled : ! 1 ,
1427
+ click : function ( ) {
1428
+ return g . webContents . send ( "mode-changed" , "global" )
1429
+ }
1430
+ } , {
1431
+ label : "Rule" ,
1432
+ type : "radio" ,
1433
+ id : "mode-rule" ,
1434
+ enabled : state . isReady ,
1435
+ checked : "rule" === state . menuMode ,
1436
+ click : function ( ) {
1437
+ return g . webContents . send ( "mode-changed" , "rule" )
1438
+ }
1439
+ } , {
1440
+ label : "Direct" ,
1441
+ type : "radio" ,
1442
+ id : "mode-direct" ,
1443
+ enabled : ! 1 ,
1444
+ click : function ( ) {
1445
+ return g . webContents . send ( "mode-changed" , "direct" )
1446
+ }
1447
+ } , {
1448
+ label : "Script" ,
1449
+ type : "radio" ,
1450
+ id : "mode-script" ,
1451
+ enabled : ! 1 ,
1452
+ click : function ( ) {
1453
+ return g . webContents . send ( "mode-changed" , "script" )
1454
+ }
1455
+ } , {
1456
+ type : "separator"
1457
+ } , {
1458
+ label : "More" ,
1459
+ submenu : [ {
1460
+ label : "Toggle DevTools" ,
1461
+ click : function ( ) {
1462
+ g . webContents . toggleDevTools ( )
1463
+ }
1464
+ } , {
1465
+ label : "Move Dashboard To Nearest Monitor" ,
1466
+ click : function ( ) {
1467
+ g . setBounds ( B ( g . getBounds ( ) ) ) , Launch ( )
1468
+ }
1469
+ } , {
1470
+ label : "Restart" ,
1471
+ click : function ( ) {
1472
+ if ( g . isMaximized ) {
1473
+ g . unmaximize ( ) ;
1474
+ }
1475
+ host . app . relaunch ( ) , host . app . exit ( 0 )
1476
+ }
1477
+ } , {
1478
+ label : "Force Quit" ,
1479
+ click : function ( ) {
1480
+ host . app . isQuiting = ! 0 , host . app . quit ( )
1481
+ }
1482
+ } ]
1483
+ } , {
1484
+ type : "separator"
1485
+ } , {
1486
+ label : "Quit" ,
1487
+ click : function ( ) {
1488
+ if ( g . isMaximized ) {
1489
+ g . unmaximize ( ) ;
1490
+ }
1491
+ return g . webContents . send ( "app-exit" )
1492
+ }
1391
1493
} ] ) ;
1392
1494
1393
1495
function D ( ) {
1394
- j ( ) && toolBar && toolBar . setContextMenu ( O )
1496
+ j ( ) && toolBar && toolBar . setContextMenu ( language ( state . language , O_EN , O_CN ) )
1395
1497
}
1396
1498
D ( ) , host . ipcMain . on ( "clash-core-status-change" , ( function ( e , t ) {
1397
1499
if ( state . isReady = ! 0 , j ( ) ) {
1398
- var n = O . getMenuItemById ( "system-proxy" ) ;
1500
+ var n = language ( state . language , O_EN , O_CN ) . getMenuItemById ( "system-proxy" ) ;
1399
1501
n && ( n . enabled = 1 !== t ) ;
1400
- var r = O . getMenuItemById ( "mixin" ) ;
1502
+ var r = language ( state . language , O_EN , O_CN ) . getMenuItemById ( "mixin" ) ;
1401
1503
r && ( r . enabled = 1 !== t ) ;
1402
- var o = O . getMenuItemById ( "tun" ) ;
1504
+ var o = language ( state . language , O_EN , O_CN ) . getMenuItemById ( "tun" ) ;
1403
1505
o && ( o . enabled = 1 !== t ) , [ "global" , "rule" , "direct" , "script" ] . forEach ( ( function ( e ) {
1404
- var n = O . getMenuItemById ( "mode-" . concat ( e ) ) ;
1506
+ var n = language ( state . language , O_EN , O_CN ) . getMenuItemById ( "mode-" . concat ( e ) ) ;
1405
1507
n && ( n . enabled = 1 !== t )
1406
1508
} ) ) , D ( )
1407
1509
}
@@ -1418,7 +1520,7 @@ function language(v, en, cn) {
1418
1520
} ) ) , host . ipcMain . on ( "mode-changed" , ( function ( e , t ) {
1419
1521
if ( state . menuMode = t , j ( ) ) {
1420
1522
var n = "mode-" . concat ( t ) ,
1421
- r = O . getMenuItemById ( n ) ;
1523
+ r = language ( state . language , O_EN , O_CN ) . getMenuItemById ( n ) ;
1422
1524
r && ( r . checked = ! 0 ) , D ( )
1423
1525
}
1424
1526
} ) ) , host . ipcMain . handle ( "cfw-language" , ( function ( e , t ) {
@@ -1427,12 +1529,12 @@ function language(v, en, cn) {
1427
1529
state . systemProxyChecked = t
1428
1530
} ) ) , host . ipcMain . on ( "mixin-changed" , ( function ( e , t ) {
1429
1531
if ( state . mixinChecked = t , j ( ) ) {
1430
- var n = O . getMenuItemById ( "mixin" ) ;
1532
+ var n = language ( state . language , O_EN , O_CN ) . getMenuItemById ( "mixin" ) ;
1431
1533
n && ( n . checked = t ) , D ( )
1432
1534
}
1433
1535
} ) ) , host . ipcMain . on ( "tun-changed" , ( function ( e , t ) {
1434
1536
if ( state . tunModeChecked = t , j ( ) ) {
1435
- var n = O . getMenuItemById ( "tun" ) ;
1537
+ var n = language ( state . language , O_EN , O_CN ) . getMenuItemById ( "tun" ) ;
1436
1538
n && ( n . checked = t ) , D ( )
1437
1539
}
1438
1540
} ) ) , host . ipcMain . on ( "enhanced-tray-click" , Launch ) , host . ipcMain . on ( "speed-update" , ( function ( e , t , n ) {
0 commit comments