From c5898b98af57b33b2db31a5de19680eedc5b1349 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 6 Sep 2018 17:31:37 -0500 Subject: [PATCH] Remove unused field. --- .../Rendering/DeferredRenderer.cs | 49 ++++++++----------- 1 file changed, 20 insertions(+), 29 deletions(-) diff --git a/src/Avalonia.Visuals/Rendering/DeferredRenderer.cs b/src/Avalonia.Visuals/Rendering/DeferredRenderer.cs index f937964994..fcc90edd43 100644 --- a/src/Avalonia.Visuals/Rendering/DeferredRenderer.cs +++ b/src/Avalonia.Visuals/Rendering/DeferredRenderer.cs @@ -32,7 +32,6 @@ namespace Avalonia.Rendering private volatile IRef _scene; private DirtyVisuals _dirty; private IRef _overlay; - private bool _updateQueued; private object _rendering = new object(); private int _lastSceneId = -1; private DisplayDirtyRects _dirtyRectsDisplay = new DisplayDirtyRects(); @@ -394,42 +393,34 @@ namespace Avalonia.Rendering private void UpdateScene() { Dispatcher.UIThread.VerifyAccess(); - - try + if (_root.IsVisible) { - if (_root.IsVisible) - { - var sceneRef = RefCountable.Create(_scene?.Item.CloneScene() ?? new Scene(_root)); - var scene = sceneRef.Item; + var sceneRef = RefCountable.Create(_scene?.Item.CloneScene() ?? new Scene(_root)); + var scene = sceneRef.Item; - if (_dirty == null) - { - _dirty = new DirtyVisuals(); - _sceneBuilder.UpdateAll(scene); - } - else if (_dirty.Count > 0) + if (_dirty == null) + { + _dirty = new DirtyVisuals(); + _sceneBuilder.UpdateAll(scene); + } + else if (_dirty.Count > 0) + { + foreach (var visual in _dirty) { - foreach (var visual in _dirty) - { - _sceneBuilder.Update(scene, visual); - } + _sceneBuilder.Update(scene, visual); } + } - var oldScene = Interlocked.Exchange(ref _scene, sceneRef); - oldScene?.Dispose(); + var oldScene = Interlocked.Exchange(ref _scene, sceneRef); + oldScene?.Dispose(); - _dirty.Clear(); - (_root as IRenderRoot)?.Invalidate(new Rect(scene.Size)); - } - else - { - var oldScene = Interlocked.Exchange(ref _scene, null); - oldScene?.Dispose(); - } + _dirty.Clear(); + (_root as IRenderRoot)?.Invalidate(new Rect(scene.Size)); } - finally + else { - _updateQueued = false; + var oldScene = Interlocked.Exchange(ref _scene, null); + oldScene?.Dispose(); } }