From d846af0de2ee2b3b76f81f2c0fd3ccceb645b511 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Samuel=20R=C3=B8dal?= <sroedal@trolltech.com>
Date: Mon, 28 Sep 2009 18:37:15 +0200
Subject: Added convex polygon optimization to
 QGL2PaintEngineExPrivate::fill().

---
 src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
index 0af8e7178d..70d1ae92cf 100644
--- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
+++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
@@ -876,16 +876,15 @@ void QGL2PaintEngineExPrivate::fill(const QVectorPath& path)
     if (path.shape() == QVectorPath::RectangleHint) {
         QGLRect rect(points[0].x(), points[0].y(), points[2].x(), points[2].y());
         prepareForDraw(currentBrush->isOpaque());
-
         composite(rect);
-    }
-    else if (path.shape() == QVectorPath::EllipseHint) {
+    } else if (path.shape() == QVectorPath::EllipseHint
+             || path.shape() == QVectorPath::ConvexPolygonHint)
+    {
         vertexCoordinateArray.clear();
         vertexCoordinateArray.addPath(path, inverseScale);
         prepareForDraw(currentBrush->isOpaque());
         drawVertexArrays(vertexCoordinateArray, GL_TRIANGLE_FAN);
-    }
-    else {
+    } else {
         // The path is too complicated & needs the stencil technique
         vertexCoordinateArray.clear();
         vertexCoordinateArray.addPath(path, inverseScale);
-- 
cgit v1.2.1