From ccc0efaacde4740fcf86c7240565e4ed5ad4cecd Mon Sep 17 00:00:00 2001 From: Nikita Tsukanov Date: Fri, 17 Mar 2023 21:36:12 +0600 Subject: [PATCH] Fixed DispatcherTimerHelper for unit tests --- src/Avalonia.Base/Threading/Dispatcher.Queue.cs | 5 ++++- src/Avalonia.Base/Utilities/DispatcherTimerHelper.cs | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Avalonia.Base/Threading/Dispatcher.Queue.cs b/src/Avalonia.Base/Threading/Dispatcher.Queue.cs index 0ce2479a45..eedfe12734 100644 --- a/src/Avalonia.Base/Threading/Dispatcher.Queue.cs +++ b/src/Avalonia.Base/Threading/Dispatcher.Queue.cs @@ -16,7 +16,10 @@ public partial class Dispatcher { _backgroundTimer = new DispatcherTimer(this, DispatcherPriority.Send, - TimeSpan.FromMilliseconds(1)); + TimeSpan.FromMilliseconds(1)) + { + Tag = "Dispatcher.RequestBackgroundProcessing" + }; _backgroundTimer.Tick += delegate { _backgroundTimer.Stop(); diff --git a/src/Avalonia.Base/Utilities/DispatcherTimerHelper.cs b/src/Avalonia.Base/Utilities/DispatcherTimerHelper.cs index 0c4a5f1051..a457388fb2 100644 --- a/src/Avalonia.Base/Utilities/DispatcherTimerHelper.cs +++ b/src/Avalonia.Base/Utilities/DispatcherTimerHelper.cs @@ -12,6 +12,7 @@ public static class DispatcherTimerUtils public static void ForceFire(this DispatcherTimer timer) { timer.Promote(); + timer.Dispatcher.RemoveTimer(timer); timer.Dispatcher.RunJobs(); } } \ No newline at end of file