diff --git a/src/Artemis.UI/Screens/ProfileEditor/Panels/VisualEditor/Visualizers/LayerShapeVisualizerViewModel.cs b/src/Artemis.UI/Screens/ProfileEditor/Panels/VisualEditor/Visualizers/LayerShapeVisualizerViewModel.cs index c2fffde2d..5414e6d62 100644 --- a/src/Artemis.UI/Screens/ProfileEditor/Panels/VisualEditor/Visualizers/LayerShapeVisualizerViewModel.cs +++ b/src/Artemis.UI/Screens/ProfileEditor/Panels/VisualEditor/Visualizers/LayerShapeVisualizerViewModel.cs @@ -8,6 +8,7 @@ using Avalonia; using Avalonia.Controls.Mixins; using Avalonia.Media; using Avalonia.Skia; +using Avalonia.Threading; using ReactiveUI; using SkiaSharp; @@ -27,7 +28,7 @@ public class LayerShapeVisualizerViewModel : ActivatableViewModelBase, IVisualiz this.WhenActivated(d => { - Observable.FromEventPattern(x => Layer.RenderPropertiesUpdated += x, x => Layer.RenderPropertiesUpdated -= x).Subscribe(_ => Update()).DisposeWith(d); + Observable.FromEventPattern(x => Layer.RenderPropertiesUpdated += x, x => Layer.RenderPropertiesUpdated -= x).Subscribe(_ => Dispatcher.UIThread.Post(Update)).DisposeWith(d); Observable.FromEventPattern(x => Layer.Transform.Position.CurrentValueSet += x, x => Layer.Transform.Position.CurrentValueSet -= x) .Subscribe(_ => UpdateTransform()) .DisposeWith(d);