|
|
|
@ -76,7 +76,20 @@ namespace Avalonia.Diagnostics.ViewModels |
|
|
|
get => _shouldVisualizeDirtyRects; |
|
|
|
set |
|
|
|
{ |
|
|
|
((TopLevel)_root).Renderer.DrawDirtyRects = value; |
|
|
|
var changed = true; |
|
|
|
if (_root is TopLevel topLevel && topLevel.Renderer is { }) |
|
|
|
{ |
|
|
|
topLevel.Renderer.DrawDirtyRects = value; |
|
|
|
} |
|
|
|
else if (_root is Controls.Application app && app.RendererRoot is { }) |
|
|
|
{ |
|
|
|
app.RendererRoot.DrawDirtyRects = value; |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
changed = false; |
|
|
|
} |
|
|
|
if (changed) |
|
|
|
RaiseAndSetIfChanged(ref _shouldVisualizeDirtyRects, value); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -96,8 +109,21 @@ namespace Avalonia.Diagnostics.ViewModels |
|
|
|
get => _showFpsOverlay; |
|
|
|
set |
|
|
|
{ |
|
|
|
((TopLevel)_root).Renderer.DrawFps = value; |
|
|
|
RaiseAndSetIfChanged(ref _showFpsOverlay, value); |
|
|
|
var changed = true; |
|
|
|
if (_root is TopLevel topLevel && topLevel.Renderer is { }) |
|
|
|
{ |
|
|
|
topLevel.Renderer.DrawFps = value; |
|
|
|
} |
|
|
|
else if (_root is Controls.Application app && app.RendererRoot is { }) |
|
|
|
{ |
|
|
|
app.RendererRoot.DrawFps = value; |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
changed = false; |
|
|
|
} |
|
|
|
if(changed) |
|
|
|
RaiseAndSetIfChanged(ref _showFpsOverlay, value); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|