vcl/skia/gdiimpl.cxx     |    2 +-
 vcl/skia/win/gdiimpl.cxx |    1 +
 vcl/skia/x11/gdiimpl.cxx |    1 +
 3 files changed, 3 insertions(+), 1 deletion(-)

New commits:
commit 0aa98f7b745a884639e722c0118387dd9f3f8990
Author:     Luboš Luňák <l.lu...@collabora.com>
AuthorDate: Wed Jul 15 12:16:47 2020 +0200
Commit:     Adolfo Jayme Barrientos <fit...@ubuntu.com>
CommitDate: Thu Jul 16 18:30:14 2020 +0200

    flush all Skia drawing before drawing to the screen
    
    Otherwise xor drawing might not get applied.
    
    Change-Id: Ic1f9496c76c8f1162951e2ac4acbcd131c714a3b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98885
    Tested-by: Jenkins
    Reviewed-by: Luboš Luňák <l.lu...@collabora.com>
    (cherry picked from commit b0ba9e835060f8f5daf3943a03039ed443705eba)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98839
    Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com>

diff --git a/vcl/skia/gdiimpl.cxx b/vcl/skia/gdiimpl.cxx
index 0dcb74c410b2..d9c5ba487237 100644
--- a/vcl/skia/gdiimpl.cxx
+++ b/vcl/skia/gdiimpl.cxx
@@ -1078,7 +1078,7 @@ Color SkiaSalGraphicsImpl::getPixel(long nX, long nY)
     SkiaZone zone;
     checkSurface();
     SAL_INFO("vcl.skia.trace", "getpixel(" << this << "): " << Point(nX, nY));
-    mSurface->getCanvas()->flush();
+    flushDrawing();
     // This is presumably slow, but getPixel() should be generally used only 
by unit tests.
     SkBitmap bitmap;
     if (!bitmap.tryAllocN32Pixels(GetWidth(), GetHeight()))
diff --git a/vcl/skia/win/gdiimpl.cxx b/vcl/skia/win/gdiimpl.cxx
index 43ced4e9639f..c42bd79fa22a 100644
--- a/vcl/skia/win/gdiimpl.cxx
+++ b/vcl/skia/win/gdiimpl.cxx
@@ -66,6 +66,7 @@ void WinSkiaSalGraphicsImpl::freeResources() {}
 void WinSkiaSalGraphicsImpl::performFlush()
 {
     SkiaZone zone;
+    flushDrawing();
     if (mWindowContext)
         mWindowContext->swapBuffers();
 }
diff --git a/vcl/skia/x11/gdiimpl.cxx b/vcl/skia/x11/gdiimpl.cxx
index 4754bfc64f95..93025c0ef7d1 100644
--- a/vcl/skia/x11/gdiimpl.cxx
+++ b/vcl/skia/x11/gdiimpl.cxx
@@ -128,6 +128,7 @@ void X11SkiaSalGraphicsImpl::freeResources() {}
 void X11SkiaSalGraphicsImpl::performFlush()
 {
     SkiaZone zone;
+    flushDrawing();
     // TODO XPutImage() is somewhat inefficient, XShmPutImage() should be 
preferred.
     mWindowContext->swapBuffers();
 }
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to