From d677e834e81c96a3225ff4145ca40ce2a3149dfd Mon Sep 17 00:00:00 2001 From: Yoshihiro Ito Date: Sat, 19 Oct 2024 17:54:54 +0900 Subject: [PATCH] Fix event handler leak --- src/AvaloniaHex/Editing/CaretLayer.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/AvaloniaHex/Editing/CaretLayer.cs b/src/AvaloniaHex/Editing/CaretLayer.cs index e9805fe..b9f1d59 100644 --- a/src/AvaloniaHex/Editing/CaretLayer.cs +++ b/src/AvaloniaHex/Editing/CaretLayer.cs @@ -1,4 +1,5 @@ using Avalonia; +using Avalonia.Interactivity; using Avalonia.Media; using Avalonia.Threading; using AvaloniaHex.Rendering; @@ -44,6 +45,15 @@ public CaretLayer(Caret caret) _blinkTimer.Tick += BlinkTimerOnTick; } + + /// + protected override void OnUnloaded(RoutedEventArgs e) + { + base.OnUnloaded(e); + + _blinkTimer.IsEnabled = false; + _blinkTimer.Tick -= BlinkTimerOnTick; + } /// public override LayerRenderMoments UpdateMoments => LayerRenderMoments.NoResizeRearrange;