From 4f5a9c8791588abdd6c7c0f94cbaeea1c65d8130 Mon Sep 17 00:00:00 2001 From: Girish Ramakrishnan Date: Thu, 5 Jul 2012 22:00:28 +0530 Subject: linuxfb: create image only on resize Reviewed-by: Gunnar Sletta Reviewed-by: Thomas Senyk Change-Id: I04cd75f96cf755ef0c12fad70e3bbd96fbbed9a1 Reviewed-by: Girish Ramakrishnan --- src/platformsupport/fbconvenience/qfbbackingstore.cpp | 13 +++---------- src/platformsupport/fbconvenience/qfbbackingstore_p.h | 1 - 2 files changed, 3 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/platformsupport/fbconvenience/qfbbackingstore.cpp b/src/platformsupport/fbconvenience/qfbbackingstore.cpp index 80ba4031ec..14a51d7a67 100644 --- a/src/platformsupport/fbconvenience/qfbbackingstore.cpp +++ b/src/platformsupport/fbconvenience/qfbbackingstore.cpp @@ -51,7 +51,6 @@ QT_BEGIN_NAMESPACE QFbBackingStore::QFbBackingStore(QWindow *window) : QPlatformBackingStore(window) { - mImage = QImage(window->size(), window->screen()->handle()->format()); (static_cast(window->handle()))->setBackingStore(this); } @@ -67,18 +66,12 @@ void QFbBackingStore::flush(QWindow *window, const QRegion ®ion, const QPoint (static_cast(window->handle()))->repaint(region); } -void QFbBackingStore::resize(const QSize &size, const QRegion ®ion) +void QFbBackingStore::resize(const QSize &size, const QRegion &staticContents) { - Q_UNUSED(region); - // change the widget's QImage if this is a resize + Q_UNUSED(staticContents); + if (mImage.size() != size) mImage = QImage(size, window()->screen()->handle()->format()); - // QPlatformBackingStore::resize(size); -} - -bool QFbBackingStore::scroll(const QRegion &area, int dx, int dy) -{ - return QPlatformBackingStore::scroll(area, dx, dy); } void QFbBackingStore::beginPaint(const QRegion ®ion) diff --git a/src/platformsupport/fbconvenience/qfbbackingstore_p.h b/src/platformsupport/fbconvenience/qfbbackingstore_p.h index a01e35641c..f0d285e697 100644 --- a/src/platformsupport/fbconvenience/qfbbackingstore_p.h +++ b/src/platformsupport/fbconvenience/qfbbackingstore_p.h @@ -58,7 +58,6 @@ public: virtual QPaintDevice *paintDevice() { return &mImage; } virtual void flush(QWindow *window, const QRegion ®ion, const QPoint &offset); - virtual bool scroll(const QRegion &area, int dx, int dy); virtual void beginPaint(const QRegion ®ion); virtual void endPaint(const QRegion ®ion); -- cgit v1.2.3