From f4a2e715dea26ab732352839f614f6236fce604b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Thu, 27 Aug 2009 12:12:49 +0200 Subject: Fixed clipping bugs in QGLWidgets (very noticeable in sub-attaq). When the paint engine used by QGLWidgets was the GL 2 paint engine the backing store assumed partial update support, which is not the case. We need to check for both QPaintEngine::OpenGL and QPaintEngine::OpenGL2. Reviewed-by: Trond --- src/gui/painting/qbackingstore.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gui/painting/qbackingstore.cpp b/src/gui/painting/qbackingstore.cpp index 0fffaef..4f45c3d 100644 --- a/src/gui/painting/qbackingstore.cpp +++ b/src/gui/painting/qbackingstore.cpp @@ -1544,7 +1544,8 @@ void QWidgetPrivate::repaint_sys(const QRegion &rgn) // QGLWidget does not support partial updates if: // 1) The context is double buffered // 2) The context is single buffered and auto-fill background is enabled. - const bool noPartialUpdateSupport = (engine && engine->type() == QPaintEngine::OpenGL) + const bool noPartialUpdateSupport = (engine && engine->type() == QPaintEngine::OpenGL + || engine->type() == QPaintEngine::OpenGL2) && (usesDoubleBufferedGLContext || q->autoFillBackground()); QRegion toBePainted(noPartialUpdateSupport ? q->rect() : rgn); -- cgit v0.12