summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@nokia.com>2009-12-09 12:12:50 (GMT)
committerJørgen Lind <jorgen.lind@nokia.com>2009-12-09 12:12:50 (GMT)
commit53b0e8047e22930bd10a8f1d5ce573b6b190fbad (patch)
tree1174340a9b9a0577629995e958ec167013d32431
parent932346c345d7759b0e9280434a0371c8e9d67b7e (diff)
downloadQt-53b0e8047e22930bd10a8f1d5ce573b6b190fbad.zip
Qt-53b0e8047e22930bd10a8f1d5ce573b6b190fbad.tar.gz
Qt-53b0e8047e22930bd10a8f1d5ce573b6b190fbad.tar.bz2
Fix stupid stride error in qblitter_directfb
How many times am I going to make that mistake?"£$%"^
-rw-r--r--src/gui/image/qpixmap_blitter.cpp2
-rw-r--r--src/plugins/graphicssystems/minimaldfb/qblitter_directfb.cpp2
-rw-r--r--src/plugins/graphicssystems/minimaldfb/qgraphicssystem_minimaldfb.cpp9
3 files changed, 6 insertions, 7 deletions
diff --git a/src/gui/image/qpixmap_blitter.cpp b/src/gui/image/qpixmap_blitter.cpp
index 08b0c3c..18761a9 100644
--- a/src/gui/image/qpixmap_blitter.cpp
+++ b/src/gui/image/qpixmap_blitter.cpp
@@ -103,7 +103,7 @@ void QBlittablePixmapData::fromImage(const QImage &image,
resize(image.width(),image.height());
QImage *thisImg = blittable()->lock();
QPainter p(thisImg);
- p.drawImage(blittable()->rect(),image,image.rect());
+ p.drawImage(0,0,image,flags);
}
QPaintEngine *QBlittablePixmapData::paintEngine() const
diff --git a/src/plugins/graphicssystems/minimaldfb/qblitter_directfb.cpp b/src/plugins/graphicssystems/minimaldfb/qblitter_directfb.cpp
index 8d54c21..3c58970 100644
--- a/src/plugins/graphicssystems/minimaldfb/qblitter_directfb.cpp
+++ b/src/plugins/graphicssystems/minimaldfb/qblitter_directfb.cpp
@@ -79,7 +79,7 @@ QImage *QDirectFbBlitter::doLock()
QImage::Format format = QDirectFbConvenience::imageFormatFromSurface(m_surface);
int w, h;
m_surface->GetSize(m_surface,&w,&h);
- m_image = QImage(static_cast<uchar *>(mem),w,h,format);
+ m_image = QImage(static_cast<uchar *>(mem),w,h,bpl,format);
} else {
DirectFBError("Failed to lock image", result);
}
diff --git a/src/plugins/graphicssystems/minimaldfb/qgraphicssystem_minimaldfb.cpp b/src/plugins/graphicssystems/minimaldfb/qgraphicssystem_minimaldfb.cpp
index b4766f3..b7aab7a 100644
--- a/src/plugins/graphicssystems/minimaldfb/qgraphicssystem_minimaldfb.cpp
+++ b/src/plugins/graphicssystems/minimaldfb/qgraphicssystem_minimaldfb.cpp
@@ -97,15 +97,14 @@ IDirectFBWindow *QDirectFbGraphicsSystemScreen::createWindow(const QRect &rect,
DFBWindowDescription description;
memset(&description,0,sizeof(DFBWindowDescription));
-// description.flags = DWDESC_SURFACE_CAPS;
+ description.flags = DFBWindowDescriptionFlags(DWDESC_WIDTH|DWDESC_HEIGHT|DWDESC_POSX|DWDESC_POSY|DWDESC_SURFACE_CAPS|DWDESC_OPTIONS|DWDESC_CAPS);
description.width = rect.width();
description.height = rect.height();
description.posx = rect.x();
description.posy = rect.y();
-// description.flags |= DWDESC_OPTIONS;
-// description.options = DWOP_GHOST|DWOP_ALPHACHANNEL;
-// description.caps = (DFBWindowDescription) (DWCAPS_NODECORATION|DWCAPS_DOUBLEBUFFER);
-// description.surface_caps = DSCAPS_PREMULTIPLIED;
+ description.options = DFBWindowOptions(DWOP_GHOST|DWOP_ALPHACHANNEL);
+ description.caps = DFBWindowCapabilities(DWCAPS_NODECORATION|DWCAPS_DOUBLEBUFFER);
+ description.surface_caps = DSCAPS_PREMULTIPLIED;
DFBResult result = m_layer->CreateWindow(m_layer,&description,&window);
if (result != DFB_OK) {