From 400523da951c818405e83117887f4fc2924da795 Mon Sep 17 00:00:00 2001 From: Jumar Macato Date: Thu, 25 Jun 2020 21:40:05 +0800 Subject: [PATCH 1/2] Fix dev tools crashing on X11. --- src/Avalonia.Controls/TreeView.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Avalonia.Controls/TreeView.cs b/src/Avalonia.Controls/TreeView.cs index a91655855c..a6cbb96bc2 100644 --- a/src/Avalonia.Controls/TreeView.cs +++ b/src/Avalonia.Controls/TreeView.cs @@ -347,7 +347,7 @@ namespace Avalonia.Controls if (container != null) { - DispatcherTimer.RunOnce(container.BringIntoView, TimeSpan.Zero); + DispatcherTimer.RunOnce(container.BringIntoView, TimeSpan.FromTicks(1)); } } } From 441590f549459df9223ac588d9b7fb761f1ad25c Mon Sep 17 00:00:00 2001 From: Jumar Macato Date: Thu, 25 Jun 2020 22:10:15 +0800 Subject: [PATCH 2/2] change in DispatcherTimer instead. --- src/Avalonia.Base/Threading/DispatcherTimer.cs | 6 ++++-- src/Avalonia.Controls/TreeView.cs | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Avalonia.Base/Threading/DispatcherTimer.cs b/src/Avalonia.Base/Threading/DispatcherTimer.cs index ebafc8b946..56cde9738e 100644 --- a/src/Avalonia.Base/Threading/DispatcherTimer.cs +++ b/src/Avalonia.Base/Threading/DispatcherTimer.cs @@ -14,7 +14,7 @@ namespace Avalonia.Threading private readonly DispatcherPriority _priority; private TimeSpan _interval; - + /// /// Initializes a new instance of the class. /// @@ -154,6 +154,8 @@ namespace Avalonia.Threading TimeSpan interval, DispatcherPriority priority = DispatcherPriority.Normal) { + interval = (interval != TimeSpan.Zero) ? interval : TimeSpan.FromTicks(1); + var timer = new DispatcherTimer(priority) { Interval = interval }; timer.Tick += (s, e) => @@ -197,7 +199,7 @@ namespace Avalonia.Threading } } - + /// /// Raises the event on the dispatcher thread. diff --git a/src/Avalonia.Controls/TreeView.cs b/src/Avalonia.Controls/TreeView.cs index a6cbb96bc2..a91655855c 100644 --- a/src/Avalonia.Controls/TreeView.cs +++ b/src/Avalonia.Controls/TreeView.cs @@ -347,7 +347,7 @@ namespace Avalonia.Controls if (container != null) { - DispatcherTimer.RunOnce(container.BringIntoView, TimeSpan.FromTicks(1)); + DispatcherTimer.RunOnce(container.BringIntoView, TimeSpan.Zero); } } }