summaryrefslogtreecommitdiffstats
path: root/src/plugins/graphicssystems
diff options
context:
space:
mode:
authorJeremy Katz <jeremy.katz@nokia.com>2010-03-25 14:00:44 (GMT)
committerJeremy Katz <jeremy.katz@nokia.com>2010-03-25 14:00:44 (GMT)
commit2c38550ddb064215f827f856110128f2bb4fd631 (patch)
treeb2096adb4b4979cdb1b7eaff76ecda11aa977d5c /src/plugins/graphicssystems
parent1bbe84eb729b9b692910720cbf0805c9e485bad0 (diff)
downloadQt-2c38550ddb064215f827f856110128f2bb4fd631.zip
Qt-2c38550ddb064215f827f856110128f2bb4fd631.tar.gz
Qt-2c38550ddb064215f827f856110128f2bb4fd631.tar.bz2
don't set composition mode to source when painting the bottow layer
Doing so kills performance on the painting benchmark
Diffstat (limited to 'src/plugins/graphicssystems')
-rw-r--r--src/plugins/graphicssystems/fb_base/fb_base.cpp5
-rw-r--r--src/plugins/graphicssystems/linuxfb/qgraphicssystem_linuxfb.cpp1
2 files changed, 0 insertions, 6 deletions
diff --git a/src/plugins/graphicssystems/fb_base/fb_base.cpp b/src/plugins/graphicssystems/fb_base/fb_base.cpp
index c1ce817..d30746a 100644
--- a/src/plugins/graphicssystems/fb_base/fb_base.cpp
+++ b/src/plugins/graphicssystems/fb_base/fb_base.cpp
@@ -189,9 +189,7 @@ QRegion QGraphicsSystemFbScreen::doRedraw()
foreach (QRect rect, intersect.rects()) {
bool firstLayer = true;
if (layer == -1) {
- compositePainter->setCompositionMode(QPainter::CompositionMode_Source);
compositePainter->fillRect(rect, Qt::black);
- compositePainter->setCompositionMode(QPainter::CompositionMode_SourceOver);
firstLayer = false;
layer = windowStack.size() - 1;
}
@@ -204,12 +202,9 @@ QRegion QGraphicsSystemFbScreen::doRedraw()
QRect windowRect = windowStack[layerIndex]->geometry();
QRect windowIntersect = rect.translated(-windowRect.left(),
-windowRect.top());
- if (firstLayer)
- compositePainter->setCompositionMode(QPainter::CompositionMode_Source);
compositePainter->drawImage(rect, windowStack[layerIndex]->image(),
windowIntersect);
if (firstLayer) {
- compositePainter->setCompositionMode(QPainter::CompositionMode_SourceOver);
firstLayer = false;
}
}
diff --git a/src/plugins/graphicssystems/linuxfb/qgraphicssystem_linuxfb.cpp b/src/plugins/graphicssystems/linuxfb/qgraphicssystem_linuxfb.cpp
index 21a5da3..44960bb 100644
--- a/src/plugins/graphicssystems/linuxfb/qgraphicssystem_linuxfb.cpp
+++ b/src/plugins/graphicssystems/linuxfb/qgraphicssystem_linuxfb.cpp
@@ -846,7 +846,6 @@ QRegion QLinuxFbGraphicsSystemScreen::doRedraw()
if (!compositePainter) {
compositePainter = new QPainter(mFbScreenImage);
- compositePainter->setCompositionMode(QPainter::CompositionMode_Source);
}
QVector<QRect> rects = touched.rects();