summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qpaintengine_raster.cpp
diff options
context:
space:
mode:
authorSamuel Rødal <sroedal@trolltech.com>2009-06-22 08:45:48 (GMT)
committerSamuel Rødal <sroedal@trolltech.com>2009-06-22 08:56:46 (GMT)
commit4c515cebc653e44fe6374058b205610592128ea4 (patch)
treed68edcf2494646f407355fd8b420050537d926ba /src/gui/painting/qpaintengine_raster.cpp
parent1a2a6c152dbb467f31bd809098a19f4c90c6d48f (diff)
downloadQt-4c515cebc653e44fe6374058b205610592128ea4.zip
Qt-4c515cebc653e44fe6374058b205610592128ea4.tar.gz
Qt-4c515cebc653e44fe6374058b205610592128ea4.tar.bz2
Fixed wrong painting when doing IntersectClip after setClipping(false).
The documentation is a bit ambiguous on what the expected behavior here is, but the behavior was consistent across paint engines before 4.5. QPaintEngineEx introduced inconsistencies in the raster and OpenGL paint engines, so this patch reverts the behavior back to what it was in 4.4. Task-number: 256549 Reviewed-by: Trond
Diffstat (limited to 'src/gui/painting/qpaintengine_raster.cpp')
-rw-r--r--src/gui/painting/qpaintengine_raster.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp
index 84af880..8e91101 100644
--- a/src/gui/painting/qpaintengine_raster.cpp
+++ b/src/gui/painting/qpaintengine_raster.cpp
@@ -1315,6 +1315,7 @@ void QRasterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op)
delete s->clip;
s->clip = clip;
+ s->clip->enabled = true;
s->flags.has_clip_ownership = true;
} else { // intersect clip with current clip
@@ -1331,6 +1332,7 @@ void QRasterPaintEngine::clip(const QRect &rect, Qt::ClipOperation op)
s->clip->setClipRect(base->clipRect & clipRect);
else
s->clip->setClipRegion(base->clipRegion & clipRect);
+ s->clip->enabled = true;
} else {
QPaintEngineEx::clip(rect, op);
return;