diff --git a/App.xaml.cs b/App.xaml.cs
index 68d7c2b..28c0f82 100644
--- a/App.xaml.cs
+++ b/App.xaml.cs
@@ -10,7 +10,7 @@ public partial class App : Application
private void App_DispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
{
- MessageBox.Show("Error: " + e.Exception.Message);
+ MessageBox.Show($"Error: {e.Exception.Message}");
e.Handled = true;
}
}
\ No newline at end of file
diff --git a/Consts/MainMultilangConst.Designer.cs b/Consts/MainMultilangConst.Designer.cs
index fcdcd12..ad07f28 100644
--- a/Consts/MainMultilangConst.Designer.cs
+++ b/Consts/MainMultilangConst.Designer.cs
@@ -70,7 +70,7 @@ namespace Sheas_Cealer.Consts {
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to open about window 的本地化字符串。
///
public static string AboutButtonToolTip {
get {
@@ -97,7 +97,7 @@ namespace Sheas_Cealer.Consts {
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to edit Cealing Host 的本地化字符串。
///
public static string EditHostButtonToolTip {
get {
@@ -160,7 +160,7 @@ namespace Sheas_Cealer.Consts {
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to process the contents of the input box 的本地化字符串。
///
public static string SettingsFunctionButtonToolTip {
get {
@@ -178,7 +178,7 @@ namespace Sheas_Cealer.Consts {
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to switch settings mode 的本地化字符串。
///
public static string SettingsModeButtonToolTip {
get {
@@ -189,18 +189,18 @@ namespace Sheas_Cealer.Consts {
///
/// 查找类似 Start Cealing 的本地化字符串。
///
- public static string StartCealButtonContent {
+ public static string StartButtonContent {
get {
- return ResourceManager.GetString("StartCealButtonContent", resourceCulture);
+ return ResourceManager.GetString("StartButtonContent", resourceCulture);
}
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to launch the injected browser 的本地化字符串。
///
- public static string StartCealButtonToolTip {
+ public static string StartButtonToolTip {
get {
- return ResourceManager.GetString("StartCealButtonToolTip", resourceCulture);
+ return ResourceManager.GetString("StartButtonToolTip", resourceCulture);
}
}
@@ -232,7 +232,7 @@ namespace Sheas_Cealer.Consts {
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to switch themes 的本地化字符串。
///
public static string ThemesButtonToolTip {
get {
@@ -250,7 +250,7 @@ namespace Sheas_Cealer.Consts {
}
///
- /// 查找类似 的本地化字符串。
+ /// 查找类似 Click to update Cealing Host 的本地化字符串。
///
public static string UpdateHostButtonToolTip {
get {
diff --git a/Consts/MainMultilangConst.resx b/Consts/MainMultilangConst.resx
index f92fd36..75f1f1e 100644
--- a/Consts/MainMultilangConst.resx
+++ b/Consts/MainMultilangConst.resx
@@ -121,7 +121,7 @@
About Me
-
+ Click to open about window
Browser Path
@@ -130,7 +130,7 @@
Edit Host
-
+ Click to edit Cealing Host
Additional Args
@@ -151,19 +151,19 @@
Clear Args
-
+ Click to process the contents of the input box
Reset Url
-
+ Click to switch settings mode
-
+
Start Cealing
-
-
+
+ Click to launch the injected browser
Light Theme
@@ -175,13 +175,13 @@
Dark Theme
-
+ Click to switch themes
Update Host
-
+ Click to update Cealing Host
Upstream Url
diff --git a/Consts/MainMultilangConst.zh.resx b/Consts/MainMultilangConst.zh.resx
index 326b604..6595e28 100644
--- a/Consts/MainMultilangConst.zh.resx
+++ b/Consts/MainMultilangConst.zh.resx
@@ -159,10 +159,10 @@
点击切换输入框设置模式
-
+
启动伪造
-
+
点击启动伪造注入后的浏览器
diff --git a/Convs/MainSettingsBoxHintConv.cs b/Convs/MainSettingsBoxHintConv.cs
index 3e63a35..2cb5324 100644
--- a/Convs/MainSettingsBoxHintConv.cs
+++ b/Convs/MainSettingsBoxHintConv.cs
@@ -10,9 +10,9 @@ internal class MainSettingsBoxHintConv : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
- MainConst.SettingsMode? mode = value as MainConst.SettingsMode?;
+ MainConst.SettingsMode? settingsMode = value as MainConst.SettingsMode?;
- return mode switch
+ return settingsMode switch
{
MainConst.SettingsMode.BrowserPathMode => MainConst.BrowserPathModeName,
MainConst.SettingsMode.UpstreamUrlMode => MainConst.UpstreamUrlModeName,
diff --git a/Convs/MainSettingsBoxTextConv.cs b/Convs/MainSettingsBoxTextConv.cs
index 503dca5..048889f 100644
--- a/Convs/MainSettingsBoxTextConv.cs
+++ b/Convs/MainSettingsBoxTextConv.cs
@@ -9,12 +9,12 @@ internal class MainSettingsBoxTextConv : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
- MainConst.SettingsMode? mode = values[0] as MainConst.SettingsMode?;
+ MainConst.SettingsMode? settingsMode = values[0] as MainConst.SettingsMode?;
string? browserPath = values[1] as string;
string? upstreamUrl = values[2] as string;
string? extraArgs = values[3] as string;
- return mode switch
+ return settingsMode switch
{
MainConst.SettingsMode.BrowserPathMode => browserPath!,
MainConst.SettingsMode.UpstreamUrlMode => upstreamUrl!,
diff --git a/Convs/MainSettingsBoxToolTipConv.cs b/Convs/MainSettingsBoxToolTipConv.cs
index ef385c0..ed6b57e 100644
--- a/Convs/MainSettingsBoxToolTipConv.cs
+++ b/Convs/MainSettingsBoxToolTipConv.cs
@@ -10,9 +10,9 @@ internal class MainSettingsBoxToolTipConv : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
- MainConst.SettingsMode? mode = value as MainConst.SettingsMode?;
+ MainConst.SettingsMode? settingsMode = value as MainConst.SettingsMode?;
- return mode switch
+ return settingsMode switch
{
MainConst.SettingsMode.BrowserPathMode => MainConst.SettingsBoxBrowserPathPlaceHolder,
MainConst.SettingsMode.UpstreamUrlMode => MainConst.SettingsBoxUpstreamUrlPlaceHolder,
diff --git a/Convs/MainSettingsFunctionButtonContentConv.cs b/Convs/MainSettingsFunctionButtonContentConv.cs
index 7692048..370d75c 100644
--- a/Convs/MainSettingsFunctionButtonContentConv.cs
+++ b/Convs/MainSettingsFunctionButtonContentConv.cs
@@ -10,9 +10,9 @@ internal class MainSettingsFunctionButtonContentConv : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
- MainConst.SettingsMode? mode = value as MainConst.SettingsMode?;
+ MainConst.SettingsMode? settingsMode = value as MainConst.SettingsMode?;
- return mode switch
+ return settingsMode switch
{
MainConst.SettingsMode.BrowserPathMode => MainConst.SettingsFunctionButtonBrowserPathContent,
MainConst.SettingsMode.UpstreamUrlMode => MainConst.SettingsFunctionButtonUpstreamUrlContent,
diff --git a/Convs/MainSettingsModeButtonContentConv.cs b/Convs/MainSettingsModeButtonContentConv.cs
index f78ec5e..f52a1dc 100644
--- a/Convs/MainSettingsModeButtonContentConv.cs
+++ b/Convs/MainSettingsModeButtonContentConv.cs
@@ -9,9 +9,9 @@ internal class MainSettingsModeButtonContentConv : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
- MainConst.SettingsMode? mode = value as MainConst.SettingsMode?;
+ MainConst.SettingsMode? settingsMode = value as MainConst.SettingsMode?;
- return mode switch
+ return settingsMode switch
{
MainConst.SettingsMode.BrowserPathMode => MainConst.UpstreamUrlModeName,
MainConst.SettingsMode.UpstreamUrlMode => MainConst.ExtraArgsModeName,
diff --git a/Convs/MainStartCealButtonIsEnabledConv.cs b/Convs/MainStartButtonIsEnabledConv.cs
similarity index 62%
rename from Convs/MainStartCealButtonIsEnabledConv.cs
rename to Convs/MainStartButtonIsEnabledConv.cs
index 1b5010f..ef95868 100644
--- a/Convs/MainStartCealButtonIsEnabledConv.cs
+++ b/Convs/MainStartButtonIsEnabledConv.cs
@@ -6,14 +6,15 @@ using Sheas_Cealer.Consts;
namespace Sheas_Cealer.Convs;
-internal class MainStartCealButtonIsEnabledConv : IMultiValueConverter
+internal class MainStartButtonIsEnabledConv : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
string? browserPath = values[0] as string;
string? extraArgs = values[1] as string;
- return File.Exists(browserPath) && Path.GetFileName(browserPath).ToLower().EndsWith(".exe") && (MainConst.ExtraArgsRegex().IsMatch(extraArgs!) || extraArgs == MainConst.SettingsBoxExtraArgsPlaceHolder);
+ return (File.Exists(browserPath) && Path.GetFileName(browserPath).ToLowerInvariant().EndsWith(".exe")) &&
+ (extraArgs == MainConst.SettingsBoxExtraArgsPlaceHolder || MainConst.ExtraArgsRegex().IsMatch(extraArgs!));
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) => throw new NotImplementedException();
diff --git a/Convs/MainThemesButtonContentConv.cs b/Convs/MainThemesButtonContentConv.cs
index 510957f..97187ac 100644
--- a/Convs/MainThemesButtonContentConv.cs
+++ b/Convs/MainThemesButtonContentConv.cs
@@ -11,7 +11,9 @@ internal class MainThemesButtonContentConv : IValueConverter
{
bool? isLightMode = value as bool?;
- return isLightMode.HasValue ? (isLightMode.GetValueOrDefault() ? MainConst.ThemesButtonLightThemeContent : MainConst.ThemesButtonDarkThemeContent) : MainConst.ThemesButtonInheritThemeContent;
+ return isLightMode.HasValue ?
+ (isLightMode.GetValueOrDefault() ? MainConst.ThemesButtonLightThemeContent : MainConst.ThemesButtonDarkThemeContent) :
+ MainConst.ThemesButtonInheritThemeContent;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) => throw new NotImplementedException();
diff --git a/Preses/MainPres.cs b/Preses/MainPres.cs
index 2b19242..7b76e21 100644
--- a/Preses/MainPres.cs
+++ b/Preses/MainPres.cs
@@ -4,7 +4,6 @@ using CommunityToolkit.Mvvm.ComponentModel;
using MaterialDesignThemes.Wpf;
using Sheas_Cealer.Consts;
using Sheas_Cealer.Props;
-using Sheas_Cealer.Wins;
using File = System.IO.File;
namespace Sheas_Cealer.Preses;
@@ -13,9 +12,9 @@ internal partial class MainPres : ObservableObject
{
internal MainPres(string[] args)
{
- int browserPathIndex = Array.FindIndex(args, arg => arg == "-b") + 1,
- upstreamUrlIndex = Array.FindIndex(args, arg => arg == "-u") + 1,
- extraArgsIndex = Array.FindIndex(args, arg => arg == "-e") + 1;
+ int browserPathIndex = Array.FindIndex(args, arg => arg.Equals("-b", StringComparison.OrdinalIgnoreCase)) + 1;
+ int upstreamUrlIndex = Array.FindIndex(args, arg => arg.Equals("-u", StringComparison.OrdinalIgnoreCase)) + 1;
+ int extraArgsIndex = Array.FindIndex(args, arg => arg.Equals("-e", StringComparison.OrdinalIgnoreCase)) + 1;
BrowserPath = browserPathIndex == 0 ?
(!string.IsNullOrWhiteSpace(Settings.Default.BrowserPath) ? Settings.Default.BrowserPath : string.Empty) :
@@ -28,13 +27,10 @@ internal partial class MainPres : ObservableObject
ExtraArgs = extraArgsIndex == 0 ?
(!string.IsNullOrWhiteSpace(Settings.Default.ExtraArgs) ? Settings.Default.ExtraArgs : string.Empty) :
args[extraArgsIndex];
-
- if (Array.Exists(args, args => args == "-d"))
- new MainWin([]).StartCealButton_Click(null!, null!);
}
[ObservableProperty]
- private MainConst.SettingsMode mode;
+ private MainConst.SettingsMode settingsMode;
[ObservableProperty]
private bool? isLightTheme = null;
@@ -42,6 +38,7 @@ internal partial class MainPres : ObservableObject
{
PaletteHelper paletteHelper = new();
Theme newTheme = paletteHelper.GetTheme();
+
newTheme.SetBaseTheme(value.HasValue ? (value.GetValueOrDefault() ? BaseTheme.Light : BaseTheme.Dark) : BaseTheme.Inherit);
paletteHelper.SetTheme(newTheme);
}
@@ -50,7 +47,7 @@ internal partial class MainPres : ObservableObject
private string browserPath;
partial void OnBrowserPathChanged(string value)
{
- if (File.Exists(value) && Path.GetFileName(value).ToLower().EndsWith(".exe"))
+ if (File.Exists(value) && Path.GetFileName(value).ToLowerInvariant().EndsWith(".exe"))
{
Settings.Default.BrowserPath = value;
Settings.Default.Save();
diff --git a/Wins/MainWin.xaml b/Wins/MainWin.xaml
index 6218efe..e183a33 100644
--- a/Wins/MainWin.xaml
+++ b/Wins/MainWin.xaml
@@ -25,17 +25,16 @@
-
-
@@ -45,31 +44,31 @@
-
+
-
+
-
+
-
-
-
@@ -102,11 +98,9 @@
-
-
-