From 1a8227a93938a284ca3946ad3d39391e2cb64965 Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Fri, 11 Jul 2025 22:24:05 +0800 Subject: [PATCH] Use try-catch for query text box paste --- Flow.Launcher/MainWindow.xaml.cs | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs index 8474ba50e..0c8fb4d02 100644 --- a/Flow.Launcher/MainWindow.xaml.cs +++ b/Flow.Launcher/MainWindow.xaml.cs @@ -44,6 +44,9 @@ namespace Flow.Launcher #region Private Fields + // Class Name + private static readonly string ClassName = nameof(MainWindow); + // Dependency Injection private readonly Settings _settings; private readonly Theme _theme; @@ -1256,14 +1259,21 @@ namespace Flow.Launcher private void QueryTextBox_OnPaste(object sender, DataObjectPastingEventArgs e) { - var isText = e.SourceDataObject.GetDataPresent(DataFormats.UnicodeText, true); - if (isText) + try { - var text = e.SourceDataObject.GetData(DataFormats.UnicodeText) as string; - text = text.Replace(Environment.NewLine, " "); - DataObject data = new DataObject(); - data.SetData(DataFormats.UnicodeText, text); - e.DataObject = data; + var isText = e.SourceDataObject.GetDataPresent(DataFormats.UnicodeText, true); + if (isText) + { + var text = e.SourceDataObject.GetData(DataFormats.UnicodeText) as string; + text = text.Replace(Environment.NewLine, " "); + DataObject data = new DataObject(); + data.SetData(DataFormats.UnicodeText, text); + e.DataObject = data; + } + } + catch (Exception ex) + { + App.API.LogException(ClassName, "Failed to paste text", ex); } }