diff options
Diffstat (limited to 'src/plugins/platforms/directfb/qdirectfbwindowsurface.cpp')
-rw-r--r-- | src/plugins/platforms/directfb/qdirectfbwindowsurface.cpp | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/plugins/platforms/directfb/qdirectfbwindowsurface.cpp b/src/plugins/platforms/directfb/qdirectfbwindowsurface.cpp index 730f01fa1b..ab355c48f4 100644 --- a/src/plugins/platforms/directfb/qdirectfbwindowsurface.cpp +++ b/src/plugins/platforms/directfb/qdirectfbwindowsurface.cpp @@ -49,21 +49,21 @@ QT_BEGIN_NAMESPACE -QDirectFbWindowSurface::QDirectFbWindowSurface(QWidget *window, WId wId) - : QWindowSurface(window), m_pixmap(0), m_pmdata(0), m_dfbSurface(0) +QDirectFbWindowSurface::QDirectFbWindowSurface(QWindow *window) + : QPlatformBackingStore(window), m_pixmap(0), m_pmdata(0), m_dfbSurface(0) { IDirectFBDisplayLayer *layer = QDirectFbConvenience::dfbDisplayLayer(); - DFBWindowID id(wId); + DFBWindowID id(window->winId()); IDirectFBWindow *dfbWindow; layer->GetWindow(layer,id,&dfbWindow); dfbWindow->GetSurface(dfbWindow,&m_dfbSurface); //WRONGSIZE - QDirectFbBlitter *blitter = new QDirectFbBlitter(window->rect().size(), m_dfbSurface); - m_pmdata = new QDirectFbBlitterPixmapData; + QDirectFbBlitter *blitter = new QDirectFbBlitter(window->size(), m_dfbSurface); + m_pmdata = new QDirectFbBlitterPlatformPixmap; m_pmdata->setBlittable(blitter); m_pixmap = new QPixmap(m_pmdata); } @@ -78,9 +78,8 @@ QPaintDevice *QDirectFbWindowSurface::paintDevice() return m_pixmap; } -void QDirectFbWindowSurface::flush(QWidget *widget, const QRegion ®ion, const QPoint &offset) +void QDirectFbWindowSurface::flush(QWindow *, const QRegion ®ion, const QPoint &offset) { - Q_UNUSED(widget); m_pmdata->blittable()->unlock(); QVector<QRect> rects = region.rects(); @@ -91,9 +90,9 @@ void QDirectFbWindowSurface::flush(QWidget *widget, const QRegion ®ion, const } } -void QDirectFbWindowSurface::resize(const QSize &size) +void QDirectFbWindowSurface::resize(const QSize &size, const QRegion& reg) { - QWindowSurface::resize(size); + QPlatformBackingStore::resize(size, reg); //Have to add 1 ref ass it will be removed by deleting the old blitter in setBlittable m_dfbSurface->AddRef(m_dfbSurface); |