diff --git a/v2rayN/ServiceLib/ViewModels/MainWindowViewModel.cs b/v2rayN/ServiceLib/ViewModels/MainWindowViewModel.cs index 48792a0c..c3bb0fe3 100644 --- a/v2rayN/ServiceLib/ViewModels/MainWindowViewModel.cs +++ b/v2rayN/ServiceLib/ViewModels/MainWindowViewModel.cs @@ -62,6 +62,8 @@ public class MainWindowViewModel : MyReactiveObject [Reactive] public int TabMainSelectedIndex { get; set; } + [Reactive] public bool BlIsWindows { get; set; } + #endregion Menu #region Init @@ -70,6 +72,7 @@ public class MainWindowViewModel : MyReactiveObject { _config = AppManager.Instance.Config; _updateView = updateView; + BlIsWindows = Utils.IsWindows(); #region WhenAnyValue && ReactiveCommand diff --git a/v2rayN/ServiceLib/ViewModels/OptionSettingViewModel.cs b/v2rayN/ServiceLib/ViewModels/OptionSettingViewModel.cs index 81f63d00..4012e663 100644 --- a/v2rayN/ServiceLib/ViewModels/OptionSettingViewModel.cs +++ b/v2rayN/ServiceLib/ViewModels/OptionSettingViewModel.cs @@ -69,6 +69,15 @@ public class OptionSettingViewModel : MyReactiveObject #endregion UI + #region UI visibility + + [Reactive] public bool BlIsWindows { get; set; } + [Reactive] public bool BlIsLinux { get; set; } + [Reactive] public bool BlIsIsMacOS { get; set; } + [Reactive] public bool BlIsNonWindows { get; set; } + + #endregion UI visibility + #region System proxy [Reactive] public bool notProxyLocalAddress { get; set; } @@ -108,6 +117,10 @@ public class OptionSettingViewModel : MyReactiveObject { _config = AppManager.Instance.Config; _updateView = updateView; + BlIsWindows = Utils.IsWindows(); + BlIsLinux = Utils.IsLinux(); + BlIsIsMacOS = Utils.IsMacOS(); + BlIsNonWindows = Utils.IsNonWindows(); SaveCmd = ReactiveCommand.CreateFromTask(async () => { diff --git a/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml b/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml index e02d0ba5..5a391134 100644 --- a/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml +++ b/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml @@ -75,10 +75,10 @@ - + - - + + diff --git a/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml.cs b/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml.cs index 64063de8..08f66dcd 100644 --- a/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml.cs +++ b/v2rayN/v2rayN.Desktop/Views/MainWindow.axaml.cs @@ -161,10 +161,6 @@ public partial class MainWindow : WindowBase else { Title = $"{Utils.GetVersion()}"; - - menuRebootAsAdmin.IsVisible = false; - menuSettingsSetUWP.IsVisible = false; - menuGlobalHotkeySetting.IsVisible = false; } menuAddServerViaScan.IsVisible = false; diff --git a/v2rayN/v2rayN.Desktop/Views/OptionSettingWindow.axaml b/v2rayN/v2rayN.Desktop/Views/OptionSettingWindow.axaml index 321dba74..36a57637 100644 --- a/v2rayN/v2rayN.Desktop/Views/OptionSettingWindow.axaml +++ b/v2rayN/v2rayN.Desktop/Views/OptionSettingWindow.axaml @@ -356,11 +356,11 @@ Margin="{StaticResource Margin4}" HorizontalAlignment="Left" /> @@ -443,24 +443,25 @@ HorizontalAlignment="Left" /> + HorizontalAlignment="Left" + IsVisible="{Binding BlIsLinux}" /> + Watermark="proxy_set.sh" />