From 22086490c36346eec379b003ca0efda8c38d1fcd Mon Sep 17 00:00:00 2001 From: Joseph Finney Date: Sun, 3 Mar 2024 20:29:44 -0600 Subject: [PATCH] Fix jumpy newline above behavior --- Text-Grab/Views/EditTextWindow.xaml.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Text-Grab/Views/EditTextWindow.xaml.cs b/Text-Grab/Views/EditTextWindow.xaml.cs index 0335ffbc..cc163326 100644 --- a/Text-Grab/Views/EditTextWindow.xaml.cs +++ b/Text-Grab/Views/EditTextWindow.xaml.cs @@ -1166,10 +1166,12 @@ private void MakeQrCodeExecuted(object sender, ExecutedRoutedEventArgs e) private void AddedLineAboveCommand(object sender, ExecutedRoutedEventArgs e) { int replaceCaret = PassedTextControl.CaretIndex + Environment.NewLine.Length; - int lineIndex = PassedTextControl.GetLineIndexFromCharacterIndex(PassedTextControl.CaretIndex); - int lineStart = PassedTextControl.GetCharacterIndexFromLineIndex(lineIndex); - PassedTextControl.Text = PassedTextControl.Text.Insert(lineStart, Environment.NewLine); - PassedTextControl.Select(replaceCaret, 0); + int selectionLength = PassedTextControl.SelectionLength; + + SelectLine(); + string lineText = PassedTextControl.SelectedText; + PassedTextControl.SelectedText = $"{Environment.NewLine}{lineText}"; + PassedTextControl.Select(replaceCaret, selectionLength); } private void DuplicateSelectedLine(object sender, ExecutedRoutedEventArgs e)