From 1906d6854177b0960f0a861582254c31fe836439 Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Mon, 15 Sep 2025 12:57:25 +0800 Subject: [PATCH] Add ShowErrorMessage setting --- .../Flow.Launcher.Plugin.Calculator/Languages/en.xaml | 1 + Plugins/Flow.Launcher.Plugin.Calculator/Main.cs | 6 ++++++ Plugins/Flow.Launcher.Plugin.Calculator/Settings.cs | 5 ++++- .../Views/CalculatorSettings.xaml | 10 ++++++++++ 4 files changed, 21 insertions(+), 1 deletion(-) diff --git a/Plugins/Flow.Launcher.Plugin.Calculator/Languages/en.xaml b/Plugins/Flow.Launcher.Plugin.Calculator/Languages/en.xaml index 29a0ed26f..b12972b1b 100644 --- a/Plugins/Flow.Launcher.Plugin.Calculator/Languages/en.xaml +++ b/Plugins/Flow.Launcher.Plugin.Calculator/Languages/en.xaml @@ -15,4 +15,5 @@ Dot (.) Max. decimal places Copy failed, please try later + Show error message when calculation fails \ No newline at end of file diff --git a/Plugins/Flow.Launcher.Plugin.Calculator/Main.cs b/Plugins/Flow.Launcher.Plugin.Calculator/Main.cs index 5b04ae7e8..429b04979 100644 --- a/Plugins/Flow.Launcher.Plugin.Calculator/Main.cs +++ b/Plugins/Flow.Launcher.Plugin.Calculator/Main.cs @@ -79,6 +79,7 @@ namespace Flow.Launcher.Plugin.Calculator if (result == null || string.IsNullOrEmpty(result.ToString())) { + if (!_settings.ShowErrorMessage) return EmptyResults; return new List { new Result @@ -90,10 +91,14 @@ namespace Flow.Launcher.Plugin.Calculator } if (result.ToString() == "NaN") + { result = Localize.flowlauncher_plugin_calculator_not_a_number(); + } if (result is Function) + { result = Localize.flowlauncher_plugin_calculator_expression_not_complete(); + } if (!string.IsNullOrEmpty(result.ToString())) { @@ -129,6 +134,7 @@ namespace Flow.Launcher.Plugin.Calculator catch (Exception) { // Mages engine can throw various exceptions, for simplicity we catch them all and show a generic message. + if (!_settings.ShowErrorMessage) return EmptyResults; return new List { new Result diff --git a/Plugins/Flow.Launcher.Plugin.Calculator/Settings.cs b/Plugins/Flow.Launcher.Plugin.Calculator/Settings.cs index 8354863b8..0f32b09a9 100644 --- a/Plugins/Flow.Launcher.Plugin.Calculator/Settings.cs +++ b/Plugins/Flow.Launcher.Plugin.Calculator/Settings.cs @@ -4,6 +4,9 @@ namespace Flow.Launcher.Plugin.Calculator public class Settings { public DecimalSeparator DecimalSeparator { get; set; } = DecimalSeparator.UseSystemLocale; - public int MaxDecimalPlaces { get; set; } = 10; + + public int MaxDecimalPlaces { get; set; } = 10; + + public bool ShowErrorMessage { get; set; } = false; } } diff --git a/Plugins/Flow.Launcher.Plugin.Calculator/Views/CalculatorSettings.xaml b/Plugins/Flow.Launcher.Plugin.Calculator/Views/CalculatorSettings.xaml index 8d240ef39..9e7549b2d 100644 --- a/Plugins/Flow.Launcher.Plugin.Calculator/Views/CalculatorSettings.xaml +++ b/Plugins/Flow.Launcher.Plugin.Calculator/Views/CalculatorSettings.xaml @@ -15,6 +15,7 @@ + @@ -58,5 +59,14 @@ ItemsSource="{Binding MaxDecimalPlacesRange}" SelectedItem="{Binding Settings.MaxDecimalPlaces}" /> +