From eb1339f2f53e92abade5ac7635e48b3ff491e849 Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Sun, 19 Oct 2025 13:54:40 +0800 Subject: [PATCH] Optimize and improve GlobalUsings --- v2rayN/v2rayN/App.xaml.cs | 4 ---- v2rayN/v2rayN/AssemblyInfo.cs | 4 +--- v2rayN/v2rayN/Base/WindowBase.cs | 3 --- v2rayN/v2rayN/Common/QRCodeUtils.cs | 3 --- v2rayN/v2rayN/Common/UI.cs | 1 - v2rayN/v2rayN/Common/WindowsUtils.cs | 3 --- .../v2rayN/Converters/DelayColorConverter.cs | 1 - .../Converters/InverseBooleanConverter.cs | 3 --- v2rayN/v2rayN/GlobalUsings.cs | 23 +++++++++++++++++++ v2rayN/v2rayN/Manager/HotkeyManager.cs | 7 ------ v2rayN/v2rayN/Manager/WindowsManager.cs | 1 - .../ViewModels/ThemeSettingViewModel.cs | 8 ------- .../v2rayN/Views/AddGroupServerWindow.xaml.cs | 6 ----- v2rayN/v2rayN/Views/AddServer2Window.xaml.cs | 4 ---- v2rayN/v2rayN/Views/AddServerWindow.xaml.cs | 3 --- .../v2rayN/Views/BackupAndRestoreView.xaml.cs | 4 ---- v2rayN/v2rayN/Views/CheckUpdateView.xaml.cs | 3 --- .../v2rayN/Views/ClashConnectionsView.xaml.cs | 3 --- v2rayN/v2rayN/Views/ClashProxiesView.xaml.cs | 4 ---- v2rayN/v2rayN/Views/DNSSettingWindow.xaml.cs | 5 ---- .../Views/FullConfigTemplateWindow.xaml.cs | 4 ---- .../Views/GlobalHotkeySettingWindow.xaml.cs | 5 ---- v2rayN/v2rayN/Views/MainWindow.xaml.cs | 7 ------ v2rayN/v2rayN/Views/MsgView.xaml.cs | 5 ---- .../v2rayN/Views/OptionSettingWindow.xaml.cs | 5 ---- .../v2rayN/Views/ProfilesSelectWindow.xaml.cs | 4 ---- v2rayN/v2rayN/Views/ProfilesView.xaml.cs | 6 ----- .../Views/RoutingRuleDetailsWindow.xaml.cs | 4 ---- .../Views/RoutingRuleSettingWindow.xaml.cs | 5 ---- .../v2rayN/Views/RoutingSettingWindow.xaml.cs | 5 ---- v2rayN/v2rayN/Views/StatusBarView.xaml.cs | 5 ---- v2rayN/v2rayN/Views/SubEditWindow.xaml.cs | 4 ---- v2rayN/v2rayN/Views/SubSettingWindow.xaml.cs | 5 ---- v2rayN/v2rayN/Views/ThemeSettingView.xaml.cs | 2 -- 34 files changed, 24 insertions(+), 135 deletions(-) diff --git a/v2rayN/v2rayN/App.xaml.cs b/v2rayN/v2rayN/App.xaml.cs index b37b6986..de9a5370 100644 --- a/v2rayN/v2rayN/App.xaml.cs +++ b/v2rayN/v2rayN/App.xaml.cs @@ -1,7 +1,3 @@ -using System.Diagnostics; -using System.Windows; -using System.Windows.Threading; - namespace v2rayN; /// diff --git a/v2rayN/v2rayN/AssemblyInfo.cs b/v2rayN/v2rayN/AssemblyInfo.cs index 4f943deb..cb66e3c1 100644 --- a/v2rayN/v2rayN/AssemblyInfo.cs +++ b/v2rayN/v2rayN/AssemblyInfo.cs @@ -1,5 +1,3 @@ -using System.Windows; - [assembly: ThemeInfo( ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located //(used if a resource is not found in the page, @@ -7,4 +5,4 @@ using System.Windows; ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located //(used if a resource is not found in the page, // app, or any theme specific resource dictionaries) -)] \ No newline at end of file +)] diff --git a/v2rayN/v2rayN/Base/WindowBase.cs b/v2rayN/v2rayN/Base/WindowBase.cs index 1c5b8cda..aa6401e5 100644 --- a/v2rayN/v2rayN/Base/WindowBase.cs +++ b/v2rayN/v2rayN/Base/WindowBase.cs @@ -1,6 +1,3 @@ -using System.Windows; -using ReactiveUI; - namespace v2rayN.Base; public class WindowBase : ReactiveWindow where TViewModel : class diff --git a/v2rayN/v2rayN/Common/QRCodeUtils.cs b/v2rayN/v2rayN/Common/QRCodeUtils.cs index ce8eec5e..6b0bc38d 100644 --- a/v2rayN/v2rayN/Common/QRCodeUtils.cs +++ b/v2rayN/v2rayN/Common/QRCodeUtils.cs @@ -1,7 +1,4 @@ -using System.Collections; using System.Drawing; -using System.Windows; -using System.Windows.Interop; using System.Windows.Media; using System.Windows.Media.Imaging; diff --git a/v2rayN/v2rayN/Common/UI.cs b/v2rayN/v2rayN/Common/UI.cs index 60d81a4d..1d5e860c 100644 --- a/v2rayN/v2rayN/Common/UI.cs +++ b/v2rayN/v2rayN/Common/UI.cs @@ -1,4 +1,3 @@ -using System.Windows; using Microsoft.Win32; namespace v2rayN; diff --git a/v2rayN/v2rayN/Common/WindowsUtils.cs b/v2rayN/v2rayN/Common/WindowsUtils.cs index 346c7763..80778268 100644 --- a/v2rayN/v2rayN/Common/WindowsUtils.cs +++ b/v2rayN/v2rayN/Common/WindowsUtils.cs @@ -1,7 +1,4 @@ using System.Drawing; -using System.Runtime.InteropServices; -using System.Windows; -using System.Windows.Interop; using System.Windows.Media; using System.Windows.Media.Imaging; using Microsoft.Win32; diff --git a/v2rayN/v2rayN/Converters/DelayColorConverter.cs b/v2rayN/v2rayN/Converters/DelayColorConverter.cs index cab9828e..8fb8e239 100644 --- a/v2rayN/v2rayN/Converters/DelayColorConverter.cs +++ b/v2rayN/v2rayN/Converters/DelayColorConverter.cs @@ -1,4 +1,3 @@ -using System.Windows.Data; using System.Windows.Media; namespace v2rayN.Converters; diff --git a/v2rayN/v2rayN/Converters/InverseBooleanConverter.cs b/v2rayN/v2rayN/Converters/InverseBooleanConverter.cs index 29b212d7..a83b4ebc 100644 --- a/v2rayN/v2rayN/Converters/InverseBooleanConverter.cs +++ b/v2rayN/v2rayN/Converters/InverseBooleanConverter.cs @@ -1,6 +1,3 @@ -using System.Globalization; -using System.Windows.Data; - namespace v2rayN.Converters; [ValueConversion(typeof(bool), typeof(bool))] diff --git a/v2rayN/v2rayN/GlobalUsings.cs b/v2rayN/v2rayN/GlobalUsings.cs index aede90cc..21d8dbab 100644 --- a/v2rayN/v2rayN/GlobalUsings.cs +++ b/v2rayN/v2rayN/GlobalUsings.cs @@ -1,3 +1,26 @@ +global using System; +global using System.Collections; +global using System.Collections.Generic; +global using System.ComponentModel; +global using System.Diagnostics; +global using System.Globalization; +global using System.IO; +global using System.Linq; +global using System.Reactive.Disposables; +global using System.Reactive.Linq; +global using System.Runtime.InteropServices; +global using System.Text; +global using System.Threading; +global using System.Threading.Tasks; +global using System.Windows; +global using System.Windows.Data; +global using System.Windows.Input; +global using System.Windows.Interop; +global using System.Windows.Threading; +global using DynamicData; +global using DynamicData.Binding; +global using ReactiveUI; +global using ReactiveUI.Fody.Helpers; global using ServiceLib; global using ServiceLib.Base; global using ServiceLib.Common; diff --git a/v2rayN/v2rayN/Manager/HotkeyManager.cs b/v2rayN/v2rayN/Manager/HotkeyManager.cs index 538ce605..dc9eec8e 100644 --- a/v2rayN/v2rayN/Manager/HotkeyManager.cs +++ b/v2rayN/v2rayN/Manager/HotkeyManager.cs @@ -1,10 +1,3 @@ -using System.ComponentModel; -using System.Runtime.InteropServices; -using System.Text; -using System.Windows; -using System.Windows.Input; -using System.Windows.Interop; - namespace v2rayN.Manager; public sealed class HotkeyManager diff --git a/v2rayN/v2rayN/Manager/WindowsManager.cs b/v2rayN/v2rayN/Manager/WindowsManager.cs index db5818f9..c3bb98d7 100644 --- a/v2rayN/v2rayN/Manager/WindowsManager.cs +++ b/v2rayN/v2rayN/Manager/WindowsManager.cs @@ -1,5 +1,4 @@ using System.Drawing; -using System.IO; using System.Windows.Media.Imaging; namespace v2rayN.Manager; diff --git a/v2rayN/v2rayN/ViewModels/ThemeSettingViewModel.cs b/v2rayN/v2rayN/ViewModels/ThemeSettingViewModel.cs index 38204778..b92f2ff2 100644 --- a/v2rayN/v2rayN/ViewModels/ThemeSettingViewModel.cs +++ b/v2rayN/v2rayN/ViewModels/ThemeSettingViewModel.cs @@ -1,14 +1,6 @@ -using System.Reactive.Linq; -using System.Runtime.InteropServices; -using System.Windows; -using System.Windows.Interop; -using DynamicData; -using DynamicData.Binding; using MaterialDesignColors; using MaterialDesignColors.ColorManipulation; using MaterialDesignThemes.Wpf; -using ReactiveUI; -using ReactiveUI.Fody.Helpers; namespace v2rayN.ViewModels; diff --git a/v2rayN/v2rayN/Views/AddGroupServerWindow.xaml.cs b/v2rayN/v2rayN/Views/AddGroupServerWindow.xaml.cs index 84cdec42..a08d7962 100644 --- a/v2rayN/v2rayN/Views/AddGroupServerWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/AddGroupServerWindow.xaml.cs @@ -1,9 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using System.Windows.Input; -using DynamicData; -using ReactiveUI; - namespace v2rayN.Views; public partial class AddGroupServerWindow diff --git a/v2rayN/v2rayN/Views/AddServer2Window.xaml.cs b/v2rayN/v2rayN/Views/AddServer2Window.xaml.cs index b9c62dcd..0f429a49 100644 --- a/v2rayN/v2rayN/Views/AddServer2Window.xaml.cs +++ b/v2rayN/v2rayN/Views/AddServer2Window.xaml.cs @@ -1,7 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using ReactiveUI; - namespace v2rayN.Views; public partial class AddServer2Window diff --git a/v2rayN/v2rayN/Views/AddServerWindow.xaml.cs b/v2rayN/v2rayN/Views/AddServerWindow.xaml.cs index 2c0406d5..65383c32 100644 --- a/v2rayN/v2rayN/Views/AddServerWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/AddServerWindow.xaml.cs @@ -1,7 +1,4 @@ -using System.Reactive.Disposables; -using System.Windows; using System.Windows.Controls; -using ReactiveUI; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/BackupAndRestoreView.xaml.cs b/v2rayN/v2rayN/Views/BackupAndRestoreView.xaml.cs index c69fbe14..cc5a3610 100644 --- a/v2rayN/v2rayN/Views/BackupAndRestoreView.xaml.cs +++ b/v2rayN/v2rayN/Views/BackupAndRestoreView.xaml.cs @@ -1,7 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using ReactiveUI; - namespace v2rayN.Views; public partial class BackupAndRestoreView diff --git a/v2rayN/v2rayN/Views/CheckUpdateView.xaml.cs b/v2rayN/v2rayN/Views/CheckUpdateView.xaml.cs index cf53fc1a..b6adb2f5 100644 --- a/v2rayN/v2rayN/Views/CheckUpdateView.xaml.cs +++ b/v2rayN/v2rayN/Views/CheckUpdateView.xaml.cs @@ -1,6 +1,3 @@ -using System.Reactive.Disposables; -using ReactiveUI; - namespace v2rayN.Views; public partial class CheckUpdateView diff --git a/v2rayN/v2rayN/Views/ClashConnectionsView.xaml.cs b/v2rayN/v2rayN/Views/ClashConnectionsView.xaml.cs index da1795bd..0a6245a9 100644 --- a/v2rayN/v2rayN/Views/ClashConnectionsView.xaml.cs +++ b/v2rayN/v2rayN/Views/ClashConnectionsView.xaml.cs @@ -1,7 +1,4 @@ -using System.Reactive.Disposables; -using System.Windows; using System.Windows.Controls; -using ReactiveUI; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/ClashProxiesView.xaml.cs b/v2rayN/v2rayN/Views/ClashProxiesView.xaml.cs index 23943da1..f475c84a 100644 --- a/v2rayN/v2rayN/Views/ClashProxiesView.xaml.cs +++ b/v2rayN/v2rayN/Views/ClashProxiesView.xaml.cs @@ -1,7 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows.Input; -using ReactiveUI; - namespace v2rayN.Views; /// diff --git a/v2rayN/v2rayN/Views/DNSSettingWindow.xaml.cs b/v2rayN/v2rayN/Views/DNSSettingWindow.xaml.cs index 00c7d0fb..ad99b357 100644 --- a/v2rayN/v2rayN/Views/DNSSettingWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/DNSSettingWindow.xaml.cs @@ -1,8 +1,3 @@ -using System.Reactive.Disposables; -using System.Reactive.Linq; -using System.Windows; -using ReactiveUI; - namespace v2rayN.Views; public partial class DNSSettingWindow diff --git a/v2rayN/v2rayN/Views/FullConfigTemplateWindow.xaml.cs b/v2rayN/v2rayN/Views/FullConfigTemplateWindow.xaml.cs index 7f3c3341..e0cd8b14 100644 --- a/v2rayN/v2rayN/Views/FullConfigTemplateWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/FullConfigTemplateWindow.xaml.cs @@ -1,7 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using ReactiveUI; - namespace v2rayN.Views; public partial class FullConfigTemplateWindow diff --git a/v2rayN/v2rayN/Views/GlobalHotkeySettingWindow.xaml.cs b/v2rayN/v2rayN/Views/GlobalHotkeySettingWindow.xaml.cs index b23b2860..f71fe7cc 100644 --- a/v2rayN/v2rayN/Views/GlobalHotkeySettingWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/GlobalHotkeySettingWindow.xaml.cs @@ -1,9 +1,4 @@ -using System.Reactive.Disposables; -using System.Text; -using System.Windows; using System.Windows.Controls; -using System.Windows.Input; -using ReactiveUI; using v2rayN.Manager; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/MainWindow.xaml.cs b/v2rayN/v2rayN/Views/MainWindow.xaml.cs index 3fccddf0..9dc818ee 100644 --- a/v2rayN/v2rayN/Views/MainWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/MainWindow.xaml.cs @@ -1,13 +1,6 @@ -using System.ComponentModel; -using System.Reactive.Disposables; -using System.Reactive.Linq; -using System.Windows; using System.Windows.Controls; -using System.Windows.Input; -using System.Windows.Interop; using System.Windows.Media; using MaterialDesignThemes.Wpf; -using ReactiveUI; using v2rayN.Manager; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/MsgView.xaml.cs b/v2rayN/v2rayN/Views/MsgView.xaml.cs index 449597cc..61fbe469 100644 --- a/v2rayN/v2rayN/Views/MsgView.xaml.cs +++ b/v2rayN/v2rayN/Views/MsgView.xaml.cs @@ -1,8 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using System.Windows.Threading; -using ReactiveUI; - namespace v2rayN.Views; public partial class MsgView diff --git a/v2rayN/v2rayN/Views/OptionSettingWindow.xaml.cs b/v2rayN/v2rayN/Views/OptionSettingWindow.xaml.cs index 31b43d9a..1824e2a5 100644 --- a/v2rayN/v2rayN/Views/OptionSettingWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/OptionSettingWindow.xaml.cs @@ -1,9 +1,4 @@ -using System.Globalization; -using System.IO; -using System.Reactive.Disposables; -using System.Windows; using System.Windows.Media; -using ReactiveUI; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/ProfilesSelectWindow.xaml.cs b/v2rayN/v2rayN/Views/ProfilesSelectWindow.xaml.cs index 6e3369df..1b8419a0 100644 --- a/v2rayN/v2rayN/Views/ProfilesSelectWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/ProfilesSelectWindow.xaml.cs @@ -1,9 +1,5 @@ -using System.Reactive.Disposables; -using System.Windows; using System.Windows.Controls; using System.Windows.Controls.Primitives; -using System.Windows.Input; -using ReactiveUI; using v2rayN.Base; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/ProfilesView.xaml.cs b/v2rayN/v2rayN/Views/ProfilesView.xaml.cs index fc8d027f..76d73a26 100644 --- a/v2rayN/v2rayN/Views/ProfilesView.xaml.cs +++ b/v2rayN/v2rayN/Views/ProfilesView.xaml.cs @@ -1,13 +1,7 @@ -using System.Reactive.Disposables; -using System.Reactive.Linq; -using System.Windows; using System.Windows.Controls; using System.Windows.Controls.Primitives; -using System.Windows.Input; using System.Windows.Media; -using System.Windows.Threading; using MaterialDesignThemes.Wpf; -using ReactiveUI; using v2rayN.Base; using Point = System.Windows.Point; diff --git a/v2rayN/v2rayN/Views/RoutingRuleDetailsWindow.xaml.cs b/v2rayN/v2rayN/Views/RoutingRuleDetailsWindow.xaml.cs index 220f58b2..0586067a 100644 --- a/v2rayN/v2rayN/Views/RoutingRuleDetailsWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/RoutingRuleDetailsWindow.xaml.cs @@ -1,7 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using ReactiveUI; - namespace v2rayN.Views; public partial class RoutingRuleDetailsWindow diff --git a/v2rayN/v2rayN/Views/RoutingRuleSettingWindow.xaml.cs b/v2rayN/v2rayN/Views/RoutingRuleSettingWindow.xaml.cs index d69146d9..153aaedc 100644 --- a/v2rayN/v2rayN/Views/RoutingRuleSettingWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/RoutingRuleSettingWindow.xaml.cs @@ -1,8 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using System.Windows.Input; -using ReactiveUI; - namespace v2rayN.Views; public partial class RoutingRuleSettingWindow diff --git a/v2rayN/v2rayN/Views/RoutingSettingWindow.xaml.cs b/v2rayN/v2rayN/Views/RoutingSettingWindow.xaml.cs index e597715b..565897b0 100644 --- a/v2rayN/v2rayN/Views/RoutingSettingWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/RoutingSettingWindow.xaml.cs @@ -1,8 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using System.Windows.Input; -using ReactiveUI; - namespace v2rayN.Views; public partial class RoutingSettingWindow diff --git a/v2rayN/v2rayN/Views/StatusBarView.xaml.cs b/v2rayN/v2rayN/Views/StatusBarView.xaml.cs index 1d80a694..906308ab 100644 --- a/v2rayN/v2rayN/Views/StatusBarView.xaml.cs +++ b/v2rayN/v2rayN/Views/StatusBarView.xaml.cs @@ -1,8 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using System.Windows.Input; -using System.Windows.Threading; -using ReactiveUI; using v2rayN.Manager; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/SubEditWindow.xaml.cs b/v2rayN/v2rayN/Views/SubEditWindow.xaml.cs index 8bd7d6c5..488420fa 100644 --- a/v2rayN/v2rayN/Views/SubEditWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/SubEditWindow.xaml.cs @@ -1,7 +1,3 @@ -using System.Reactive.Disposables; -using System.Windows; -using ReactiveUI; - namespace v2rayN.Views; public partial class SubEditWindow diff --git a/v2rayN/v2rayN/Views/SubSettingWindow.xaml.cs b/v2rayN/v2rayN/Views/SubSettingWindow.xaml.cs index 9e8d0c76..f44739d3 100644 --- a/v2rayN/v2rayN/Views/SubSettingWindow.xaml.cs +++ b/v2rayN/v2rayN/Views/SubSettingWindow.xaml.cs @@ -1,9 +1,4 @@ -using System.ComponentModel; -using System.Reactive.Disposables; -using System.Windows; -using System.Windows.Input; using MaterialDesignThemes.Wpf; -using ReactiveUI; namespace v2rayN.Views; diff --git a/v2rayN/v2rayN/Views/ThemeSettingView.xaml.cs b/v2rayN/v2rayN/Views/ThemeSettingView.xaml.cs index 93d634de..0aacbdbb 100644 --- a/v2rayN/v2rayN/Views/ThemeSettingView.xaml.cs +++ b/v2rayN/v2rayN/Views/ThemeSettingView.xaml.cs @@ -1,5 +1,3 @@ -using System.Reactive.Disposables; -using ReactiveUI; using v2rayN.ViewModels; namespace v2rayN.Views;