Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aad1b087c9 | ||
|
|
b69c581fa1 | ||
|
|
9eb4d90cd6 | ||
|
|
958567c2c5 | ||
|
|
f1fc4583ed | ||
|
|
f7bfd5f766 | ||
|
|
aadc3c216a | ||
|
|
6fd2499daf | ||
|
|
f0405f1c5d | ||
|
|
1914cb3994 | ||
|
|
ab38fb572d | ||
|
|
46d7128a6e | ||
|
|
0821884ff3 | ||
|
|
62233281ef | ||
|
|
39504502af | ||
|
|
f97530a671 | ||
|
|
0fe7d5e598 | ||
|
|
527362dc9f | ||
|
|
1023426c8d |
@@ -149,7 +149,7 @@
|
|||||||
|
|
||||||
public static readonly List<string> allowInsecures = new() { "true", "false", "" };
|
public static readonly List<string> allowInsecures = new() { "true", "false", "" };
|
||||||
public static readonly List<string> domainStrategy4Freedoms = new() { "AsIs", "UseIP", "UseIPv4", "UseIPv6", "" };
|
public static readonly List<string> domainStrategy4Freedoms = new() { "AsIs", "UseIP", "UseIPv4", "UseIPv6", "" };
|
||||||
public static readonly List<string> Languages = new() { "zh-Hans", "en", "fa-Ir", "ru" };
|
public static readonly List<string> Languages = new() { "zh-Hans", "zh-Hant", "en", "fa-Ir", "ru" };
|
||||||
public static readonly List<string> alpns = new() { "h2", "http/1.1", "h2,http/1.1", "" };
|
public static readonly List<string> alpns = new() { "h2", "http/1.1", "h2,http/1.1", "" };
|
||||||
public static readonly List<string> LogLevel = new() { "debug", "info", "warning", "error", "none" };
|
public static readonly List<string> LogLevel = new() { "debug", "info", "warning", "error", "none" };
|
||||||
public static readonly List<string> InboundTags = new() { "socks", "http", "socks2", "http2" };
|
public static readonly List<string> InboundTags = new() { "socks", "http", "socks2", "http2" };
|
||||||
|
|||||||
@@ -594,7 +594,7 @@ namespace v2rayN.Handler
|
|||||||
profileItem.configType = EConfigType.Custom;
|
profileItem.configType = EConfigType.Custom;
|
||||||
if (Utils.IsNullOrEmpty(profileItem.remarks))
|
if (Utils.IsNullOrEmpty(profileItem.remarks))
|
||||||
{
|
{
|
||||||
profileItem.remarks = $"import custom@{DateTime.Now.ToShortDateString()}";
|
profileItem.remarks = $"import custom@{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")}";
|
||||||
}
|
}
|
||||||
|
|
||||||
AddServerCommon(ref config, profileItem, true);
|
AddServerCommon(ref config, profileItem, true);
|
||||||
|
|||||||
@@ -152,7 +152,7 @@ namespace v2rayN.Handler
|
|||||||
|
|
||||||
private void CoreStart(ProfileItem node)
|
private void CoreStart(ProfileItem node)
|
||||||
{
|
{
|
||||||
ShowMsg(false, string.Format(ResUI.StartService, DateTime.Now.ToString()));
|
ShowMsg(false, string.Format(ResUI.StartService, DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")));
|
||||||
|
|
||||||
ECoreType coreType;
|
ECoreType coreType;
|
||||||
if (node.configType != EConfigType.Custom && _config.tunModeItem.enableTun)
|
if (node.configType != EConfigType.Custom && _config.tunModeItem.enableTun)
|
||||||
@@ -201,7 +201,7 @@ namespace v2rayN.Handler
|
|||||||
|
|
||||||
private int CoreStartViaString(string configStr)
|
private int CoreStartViaString(string configStr)
|
||||||
{
|
{
|
||||||
ShowMsg(false, string.Format(ResUI.StartService, DateTime.Now.ToString()));
|
ShowMsg(false, string.Format(ResUI.StartService, DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")));
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ namespace v2rayN.Handler
|
|||||||
|
|
||||||
public void SendMessage(string msg, bool time)
|
public void SendMessage(string msg, bool time)
|
||||||
{
|
{
|
||||||
msg = $"{DateTime.Now} {msg}";
|
msg = $"{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")} {msg}";
|
||||||
MessageBus.Current.SendMessage(msg, "MsgView");
|
MessageBus.Current.SendMessage(msg, "MsgView");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -317,7 +317,7 @@
|
|||||||
<value>Сканирование URL-адреса импорта успешна.</value>
|
<value>Сканирование URL-адреса импорта успешна.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TestMeOutput" xml:space="preserve">
|
<data name="TestMeOutput" xml:space="preserve">
|
||||||
<value>Пинг текущей службы: {0} мс</value>
|
<value>Задержка текущего сервера: {0} мс</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OperationSuccess" xml:space="preserve">
|
<data name="OperationSuccess" xml:space="preserve">
|
||||||
<value>Операция успешна</value>
|
<value>Операция успешна</value>
|
||||||
@@ -335,7 +335,7 @@
|
|||||||
<value>Примечания</value>
|
<value>Примечания</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LvUrl" xml:space="preserve">
|
<data name="LvUrl" xml:space="preserve">
|
||||||
<value>Url(Необязательно)</value>
|
<value>URL (необязательно)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LvCount" xml:space="preserve">
|
<data name="LvCount" xml:space="preserve">
|
||||||
<value>Количество</value>
|
<value>Количество</value>
|
||||||
@@ -506,7 +506,7 @@
|
|||||||
<value>Тёмный режим</value>
|
<value>Тёмный режим</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsFollowSystemTheme" xml:space="preserve">
|
<data name="TbSettingsFollowSystemTheme" xml:space="preserve">
|
||||||
<value>следить за системной темой</value>
|
<value>Следить за системной темой</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsLanguage" xml:space="preserve">
|
<data name="TbSettingsLanguage" xml:space="preserve">
|
||||||
<value>Язык (требуется перезапуск)</value>
|
<value>Язык (требуется перезапуск)</value>
|
||||||
@@ -533,19 +533,19 @@
|
|||||||
<value>Очистить всю статистику</value>
|
<value>Очистить всю статистику</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuPingServer" xml:space="preserve">
|
<data name="menuPingServer" xml:space="preserve">
|
||||||
<value>Проверить пинг серверов (Ctrl+P)</value>
|
<value>Тест на задержку сервера (Ctrl+P)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuRealPingServer" xml:space="preserve">
|
<data name="menuRealPingServer" xml:space="preserve">
|
||||||
<value>Тест на реальную задержку серверов (Ctrl+R)</value>
|
<value>Тест на реальную задержку сервера (Ctrl+R)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuSortServerResult" xml:space="preserve">
|
<data name="menuSortServerResult" xml:space="preserve">
|
||||||
<value>Сортировать по результату теста</value>
|
<value>Сортировать по результату теста</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuSpeedServer" xml:space="preserve">
|
<data name="menuSpeedServer" xml:space="preserve">
|
||||||
<value>Проверить скорость загрузки серверов (Ctrl+T)</value>
|
<value>Тест на скорость загрузки сервера (Ctrl+T)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuTcpingServer" xml:space="preserve">
|
<data name="menuTcpingServer" xml:space="preserve">
|
||||||
<value>Тестировать сервера с tcping (Ctrl+O)</value>
|
<value>Тест задержки с tcping (Ctrl+O)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuTestMe" xml:space="preserve">
|
<data name="menuTestMe" xml:space="preserve">
|
||||||
<value>Проверить текущий статус службы</value>
|
<value>Проверить текущий статус службы</value>
|
||||||
@@ -656,7 +656,7 @@
|
|||||||
<value>Порт</value>
|
<value>Порт</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbRemarks" xml:space="preserve">
|
<data name="TbRemarks" xml:space="preserve">
|
||||||
<value>Псевдоним (примечания)</value>
|
<value>Примечание</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbRequestHost" xml:space="preserve">
|
<data name="TbRequestHost" xml:space="preserve">
|
||||||
<value>Маскирующий домен (хост)</value>
|
<value>Маскирующий домен (хост)</value>
|
||||||
@@ -719,16 +719,22 @@
|
|||||||
<value>Разрешить подключения из локальной сети</value>
|
<value>Разрешить подключения из локальной сети</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsAutoHideStartup" xml:space="preserve">
|
<data name="TbSettingsAutoHideStartup" xml:space="preserve">
|
||||||
<value>Auto hide startup</value>
|
<value>Автоскрытие при автозапуске</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsAutoUpdateInterval" xml:space="preserve">
|
<data name="TbSettingsAutoUpdateInterval" xml:space="preserve">
|
||||||
<value>Интервал автоматического обновления Geo в часах</value>
|
<value>Интервал автоматического обновления Geo в часах</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="LvAutoUpdateInterval" xml:space="preserve">
|
||||||
|
<value>Интервал автоматического обновления в минутах</value>
|
||||||
|
</data>
|
||||||
<data name="TbSettingsCore" xml:space="preserve">
|
<data name="TbSettingsCore" xml:space="preserve">
|
||||||
<value>Ядро: базовые настройки</value>
|
<value>Ядро: базовые настройки</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsCoreDns" xml:space="preserve">
|
<data name="TbSettingsCoreDns" xml:space="preserve">
|
||||||
<value>V2ray DNS settings</value>
|
<value>Настройки DNS V2ray</value>
|
||||||
|
</data>
|
||||||
|
<data name="TbSettingsCoreDnsSingbox" xml:space="preserve">
|
||||||
|
<value>Настройки DNS sing-box</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsCoreKcp" xml:space="preserve">
|
<data name="TbSettingsCoreKcp" xml:space="preserve">
|
||||||
<value>Ядро: настройки KCP</value>
|
<value>Ядро: настройки KCP</value>
|
||||||
@@ -806,7 +812,7 @@
|
|||||||
<value>Включить протокол безопасности TLS v1.3 (обновление подписки)</value>
|
<value>Включить протокол безопасности TLS v1.3 (обновление подписки)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsTrayMenuServersLimit" xml:space="preserve">
|
<data name="TbSettingsTrayMenuServersLimit" xml:space="preserve">
|
||||||
<value>Tray right-click menu servers display limit</value>
|
<value>Лимит серверов в меню трея</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsUdpEnabled" xml:space="preserve">
|
<data name="TbSettingsUdpEnabled" xml:space="preserve">
|
||||||
<value>Включить UDP</value>
|
<value>Включить UDP</value>
|
||||||
@@ -950,7 +956,7 @@
|
|||||||
<value>Поддержка DnsObject</value>
|
<value>Поддержка DnsObject</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="SubUrlTips" xml:space="preserve">
|
<data name="SubUrlTips" xml:space="preserve">
|
||||||
<value>Group please leave blank here</value>
|
<value>Необязательное поле</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TipChangeRouting" xml:space="preserve">
|
<data name="TipChangeRouting" xml:space="preserve">
|
||||||
<value>Настройки маршрутизации изменены</value>
|
<value>Настройки маршрутизации изменены</value>
|
||||||
@@ -962,7 +968,7 @@
|
|||||||
<value>Только маршрут</value>
|
<value>Только маршрут</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="menuMixedTestServer" xml:space="preserve">
|
<data name="menuMixedTestServer" xml:space="preserve">
|
||||||
<value>Тест задержки и скорости (Ctrl+E)</value>
|
<value>Тест задержки и скорости всех серверов (Ctrl+E)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LvTestDelay" xml:space="preserve">
|
<data name="LvTestDelay" xml:space="preserve">
|
||||||
<value>Задержка (ms)</value>
|
<value>Задержка (ms)</value>
|
||||||
@@ -983,7 +989,7 @@
|
|||||||
<value>Импортировать старый конфиг guiNConfig</value>
|
<value>Импортировать старый конфиг guiNConfig</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbEnableTunAs" xml:space="preserve">
|
<data name="TbEnableTunAs" xml:space="preserve">
|
||||||
<value>Включить интерфейс</value>
|
<value>Режим VPN</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="TbSettingsNewPort4LAN" xml:space="preserve">
|
<data name="TbSettingsNewPort4LAN" xml:space="preserve">
|
||||||
<value>Новый порт для локальной сети</value>
|
<value>Новый порт для локальной сети</value>
|
||||||
@@ -1051,4 +1057,19 @@
|
|||||||
<data name="TbSettingsEnableHWA" xml:space="preserve">
|
<data name="TbSettingsEnableHWA" xml:space="preserve">
|
||||||
<value>Включить аппаратное ускорение (требуется перезагрузка)</value>
|
<value>Включить аппаратное ускорение (требуется перезагрузка)</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="menuRebootAsAdmin" xml:space="preserve">
|
||||||
|
<value>Перезагрузить как администратор</value>
|
||||||
|
</data>
|
||||||
|
<data name="menuDNSSetting" xml:space="preserve">
|
||||||
|
<value>Настройки DNS</value>
|
||||||
|
</data>
|
||||||
|
<data name="TbSettingsLogEnabledToFile" xml:space="preserve">
|
||||||
|
<value>Включить логгирование в файл</value>
|
||||||
|
</data>
|
||||||
|
<data name="TbSettingsSpeedTestTimeout" xml:space="preserve">
|
||||||
|
<value>Таймаут одиночного спидтеста</value>
|
||||||
|
</data>
|
||||||
|
<data name="TbSettingsSpeedTestUrl" xml:space="preserve">
|
||||||
|
<value>URL спидтеста</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
1138
v2rayN/v2rayN/Resx/ResUI.zh-Hant.resx
Normal file
1138
v2rayN/v2rayN/Resx/ResUI.zh-Hant.resx
Normal file
File diff suppressed because it is too large
Load Diff
@@ -11,6 +11,17 @@ namespace v2rayN.Views
|
|||||||
public AddServer2Window(ProfileItem profileItem)
|
public AddServer2Window(ProfileItem profileItem)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
this.Loaded += Window_Loaded;
|
this.Loaded += Window_Loaded;
|
||||||
ViewModel = new AddServer2ViewModel(profileItem, this);
|
ViewModel = new AddServer2ViewModel(profileItem, this);
|
||||||
|
|||||||
@@ -15,6 +15,17 @@ namespace v2rayN.Views
|
|||||||
public AddServerWindow(ProfileItem profileItem)
|
public AddServerWindow(ProfileItem profileItem)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
this.Loaded += Window_Loaded;
|
this.Loaded += Window_Loaded;
|
||||||
cmbNetwork.SelectionChanged += CmbNetwork_SelectionChanged;
|
cmbNetwork.SelectionChanged += CmbNetwork_SelectionChanged;
|
||||||
|
|||||||
@@ -14,6 +14,17 @@ namespace v2rayN.Views
|
|||||||
public DNSSettingWindow()
|
public DNSSettingWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
_config = LazyConfig.Instance.GetConfig();
|
_config = LazyConfig.Instance.GetConfig();
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,17 @@ namespace v2rayN.Views
|
|||||||
public GlobalHotkeySettingWindow()
|
public GlobalHotkeySettingWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
_config = LazyConfig.Instance.GetConfig();
|
_config = LazyConfig.Instance.GetConfig();
|
||||||
_config.globalHotkeys ??= new List<KeyEventItem>();
|
_config.globalHotkeys ??= new List<KeyEventItem>();
|
||||||
|
|||||||
@@ -15,8 +15,6 @@
|
|||||||
Title="v2rayN"
|
Title="v2rayN"
|
||||||
Width="900"
|
Width="900"
|
||||||
Height="700"
|
Height="700"
|
||||||
MinWidth="900"
|
|
||||||
MinHeight="700"
|
|
||||||
x:TypeArguments="vms:MainWindowViewModel"
|
x:TypeArguments="vms:MainWindowViewModel"
|
||||||
Background="{DynamicResource MaterialDesignPaper}"
|
Background="{DynamicResource MaterialDesignPaper}"
|
||||||
FontFamily="{x:Static conv:MaterialDesignFonts.MyFont}"
|
FontFamily="{x:Static conv:MaterialDesignFonts.MyFont}"
|
||||||
|
|||||||
@@ -25,6 +25,17 @@ namespace v2rayN.Views
|
|||||||
public MainWindow()
|
public MainWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
_config = LazyConfig.Instance.GetConfig();
|
_config = LazyConfig.Instance.GetConfig();
|
||||||
|
|
||||||
App.Current.SessionEnding += Current_SessionEnding;
|
App.Current.SessionEnding += Current_SessionEnding;
|
||||||
|
|||||||
@@ -18,6 +18,17 @@ namespace v2rayN.Views
|
|||||||
public OptionSettingWindow()
|
public OptionSettingWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
_config = LazyConfig.Instance.GetConfig();
|
_config = LazyConfig.Instance.GetConfig();
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,17 @@ namespace v2rayN.Views
|
|||||||
public RoutingRuleDetailsWindow(RulesItem rulesItem)
|
public RoutingRuleDetailsWindow(RulesItem rulesItem)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
this.Loaded += Window_Loaded;
|
this.Loaded += Window_Loaded;
|
||||||
clbProtocol.SelectionChanged += ClbProtocol_SelectionChanged;
|
clbProtocol.SelectionChanged += ClbProtocol_SelectionChanged;
|
||||||
|
|||||||
@@ -13,6 +13,17 @@ namespace v2rayN.Views
|
|||||||
public RoutingRuleSettingWindow(RoutingItem routingItem)
|
public RoutingRuleSettingWindow(RoutingItem routingItem)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
this.Loaded += Window_Loaded;
|
this.Loaded += Window_Loaded;
|
||||||
this.PreviewKeyDown += RoutingRuleSettingWindow_PreviewKeyDown;
|
this.PreviewKeyDown += RoutingRuleSettingWindow_PreviewKeyDown;
|
||||||
|
|||||||
@@ -12,6 +12,17 @@ namespace v2rayN.Views
|
|||||||
public RoutingSettingWindow()
|
public RoutingSettingWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
this.Closing += RoutingSettingWindow_Closing;
|
this.Closing += RoutingSettingWindow_Closing;
|
||||||
this.PreviewKeyDown += RoutingSettingWindow_PreviewKeyDown;
|
this.PreviewKeyDown += RoutingSettingWindow_PreviewKeyDown;
|
||||||
|
|||||||
@@ -11,6 +11,17 @@ namespace v2rayN.Views
|
|||||||
public SubEditWindow(SubItem subItem)
|
public SubEditWindow(SubItem subItem)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
this.Loaded += Window_Loaded;
|
this.Loaded += Window_Loaded;
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,17 @@ namespace v2rayN.Views
|
|||||||
public SubSettingWindow()
|
public SubSettingWindow()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
// 设置窗口的尺寸不大于屏幕的尺寸
|
||||||
|
if (this.Width > SystemParameters.WorkArea.Width)
|
||||||
|
{
|
||||||
|
this.Width = SystemParameters.WorkArea.Width;
|
||||||
|
}
|
||||||
|
if (this.Height > SystemParameters.WorkArea.Height)
|
||||||
|
{
|
||||||
|
this.Height = SystemParameters.WorkArea.Height;
|
||||||
|
}
|
||||||
|
|
||||||
this.Owner = Application.Current.MainWindow;
|
this.Owner = Application.Current.MainWindow;
|
||||||
|
|
||||||
ViewModel = new SubSettingViewModel(this);
|
ViewModel = new SubSettingViewModel(this);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<ApplicationIcon>v2rayN.ico</ApplicationIcon>
|
<ApplicationIcon>v2rayN.ico</ApplicationIcon>
|
||||||
<Copyright>Copyright © 2017-2023 (GPLv3)</Copyright>
|
<Copyright>Copyright © 2017-2023 (GPLv3)</Copyright>
|
||||||
<FileVersion>6.27</FileVersion>
|
<FileVersion>6.28</FileVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
@@ -108,6 +108,9 @@
|
|||||||
<EmbeddedResource Update="Resx\ResUI.zh-Hans.resx">
|
<EmbeddedResource Update="Resx\ResUI.zh-Hans.resx">
|
||||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Update="Resx\ResUI.zh-Hant.resx">
|
||||||
|
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Update="Resx\ResUI.fa-Ir.resx">
|
<EmbeddedResource Update="Resx\ResUI.fa-Ir.resx">
|
||||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
|||||||
Reference in New Issue
Block a user