[Libreoffice-commits] core.git: Branch 'feature/opengl-vcl2' - vcl/opengl vcl/workben

Michael Meeks michael.meeks at collabora.com
Sun Nov 16 02:54:20 PST 2014


 vcl/opengl/gdiimpl.cxx  |    5 +++++
 vcl/workben/vcldemo.cxx |    1 +
 2 files changed, 6 insertions(+)

New commits:
commit 139b0e6cd5ba1191ff7cdef04c982ba2b6331068
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Sat Nov 15 17:33:36 2014 +0100

    vcldemo: disable broken gradient stencil use.
    
    Change-Id: Ifce85b1a7fa8e8b6fc57802a5fb559d2db50ba2a

diff --git a/vcl/opengl/gdiimpl.cxx b/vcl/opengl/gdiimpl.cxx
index edffab9..9485088 100644
--- a/vcl/opengl/gdiimpl.cxx
+++ b/vcl/opengl/gdiimpl.cxx
@@ -1447,6 +1447,8 @@ bool OpenGLSalGraphicsImpl::drawGradient(const tools::PolyPolygon& rPolyPoly,
 
     PreDraw();
 
+#define FIXME_BROKEN_STENCIL_FOR_GRADIENTS 0
+#if FIXME_BROKEN_STENCIL_FOR_GRADIENTS
     ImplSetClipBit( vcl::Region( rPolyPoly ), 0x02 );
     if( mbUseStencil )
     {
@@ -1458,6 +1460,7 @@ bool OpenGLSalGraphicsImpl::drawGradient(const tools::PolyPolygon& rPolyPoly,
         glEnable( GL_STENCIL_TEST );
         glStencilFunc( GL_EQUAL, 2, 0xFF );
     }
+#endif
 
     // if border >= 100%, draw solid rectangle with start color
     if( rGradient.GetBorder() >= 100.0 )
@@ -1482,8 +1485,10 @@ bool OpenGLSalGraphicsImpl::drawGradient(const tools::PolyPolygon& rPolyPoly,
         DrawRadialGradient( rGradient, aBoundRect );
     }
 
+#if FIXME_BROKEN_STENCIL_FOR_GRADIENTS
     if( !mbUseStencil )
         glDisable( GL_STENCIL_TEST );
+#endif
     PostDraw();
 
     CHECK_GL_ERROR();
diff --git a/vcl/workben/vcldemo.cxx b/vcl/workben/vcldemo.cxx
index 665abd5..a41d61d 100644
--- a/vcl/workben/vcldemo.cxx
+++ b/vcl/workben/vcldemo.cxx
@@ -165,6 +165,7 @@ public:
 
     void drawBackground(OutputDevice &rDev, Rectangle r)
     {
+        rDev.Erase();
         Gradient aGradient;
         aGradient.SetStartColor(COL_BLUE);
         aGradient.SetEndColor(COL_GREEN);


More information about the Libreoffice-commits mailing list