diff --git a/src/Windows/Avalonia.Win32/WindowImpl.cs b/src/Windows/Avalonia.Win32/WindowImpl.cs index 872a7cf36b..65e10cafda 100644 --- a/src/Windows/Avalonia.Win32/WindowImpl.cs +++ b/src/Windows/Avalonia.Win32/WindowImpl.cs @@ -537,18 +537,15 @@ namespace Avalonia.Win32 break; case UnmanagedMethods.WindowsMessage.WM_PAINT: - if (Paint != null) - { - UnmanagedMethods.PAINTSTRUCT ps; + UnmanagedMethods.PAINTSTRUCT ps; - if (UnmanagedMethods.BeginPaint(_hwnd, out ps) != IntPtr.Zero) - { - UnmanagedMethods.RECT r; - UnmanagedMethods.GetUpdateRect(_hwnd, out r, false); - var f = Scaling; - Paint(new Rect(r.left / f, r.top / f, (r.right - r.left) / f, (r.bottom - r.top) / f)); - UnmanagedMethods.EndPaint(_hwnd, ref ps); - } + if (UnmanagedMethods.BeginPaint(_hwnd, out ps) != IntPtr.Zero) + { + UnmanagedMethods.RECT r; + UnmanagedMethods.GetUpdateRect(_hwnd, out r, false); + var f = Scaling; + Paint?.Invoke(new Rect(r.left / f, r.top / f, (r.right - r.left) / f, (r.bottom - r.top) / f)); + UnmanagedMethods.EndPaint(_hwnd, ref ps); } return IntPtr.Zero;