From 6d11296eaeeec9b16dcee18fd44fcd7572e8bd99 Mon Sep 17 00:00:00 2001 From: leo Date: Fri, 16 Aug 2024 15:11:35 +0800 Subject: [PATCH] enhance: update selected chunk after stage/discard/unstage previous chunk (#361) --- src/Views/TextDiffView.axaml.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Views/TextDiffView.axaml.cs b/src/Views/TextDiffView.axaml.cs index d5f6194a..efe73e10 100644 --- a/src/Views/TextDiffView.axaml.cs +++ b/src/Views/TextDiffView.axaml.cs @@ -409,6 +409,7 @@ namespace SourceGit.Views base.OnLoaded(e); TextArea.TextView.ContextRequested += OnTextViewContextRequested; + TextArea.TextView.PointerEntered += OnTextViewPointerEntered; TextArea.TextView.PointerMoved += OnTextViewPointerMoved; TextArea.TextView.PointerWheelChanged += OnTextViewPointerWheelChanged; @@ -420,6 +421,7 @@ namespace SourceGit.Views base.OnUnloaded(e); TextArea.TextView.ContextRequested -= OnTextViewContextRequested; + TextArea.TextView.PointerEntered -= OnTextViewPointerEntered; TextArea.TextView.PointerMoved -= OnTextViewPointerMoved; TextArea.TextView.PointerWheelChanged -= OnTextViewPointerWheelChanged; @@ -480,6 +482,12 @@ namespace SourceGit.Views e.Handled = true; } + private void OnTextViewPointerEntered(object sender, PointerEventArgs e) + { + if (EnableChunkSelection && sender is TextView view) + UpdateSelectedChunk(e.GetPosition(view).Y + view.VerticalOffset); + } + private void OnTextViewPointerMoved(object sender, PointerEventArgs e) { if (EnableChunkSelection && sender is TextView view)