diff --git a/src/Avalonia.Diagnostics/Diagnostics/ViewModels/EventTreeNode.cs b/src/Avalonia.Diagnostics/Diagnostics/ViewModels/EventTreeNode.cs index a79816390d..e8de22710a 100644 --- a/src/Avalonia.Diagnostics/Diagnostics/ViewModels/EventTreeNode.cs +++ b/src/Avalonia.Diagnostics/Diagnostics/ViewModels/EventTreeNode.cs @@ -117,6 +117,11 @@ namespace Avalonia.Diagnostics.ViewModels _currentEvent.HandledBy = link; } } + + if (!Dispatcher.UIThread.CheckAccess()) + Dispatcher.UIThread.Post(handler); + else + handler(); } private static bool BelongsToDevTool(IVisual v) diff --git a/src/Avalonia.Diagnostics/Diagnostics/ViewModels/FiredEvent.cs b/src/Avalonia.Diagnostics/Diagnostics/ViewModels/FiredEvent.cs index 8069300922..a9f3182bef 100644 --- a/src/Avalonia.Diagnostics/Diagnostics/ViewModels/FiredEvent.cs +++ b/src/Avalonia.Diagnostics/Diagnostics/ViewModels/FiredEvent.cs @@ -64,7 +64,7 @@ namespace Avalonia.Diagnostics.ViewModels if (EventChain.Count > 0) { var prevLink = EventChain[EventChain.Count - 1]; - + if (prevLink.Route != link.Route) { link.BeginsNewRoute = true;