diff options
Diffstat (limited to 'src/widgets/kernel/qwidgetrepaintmanager.cpp')
-rw-r--r-- | src/widgets/kernel/qwidgetrepaintmanager.cpp | 28 |
1 files changed, 7 insertions, 21 deletions
diff --git a/src/widgets/kernel/qwidgetrepaintmanager.cpp b/src/widgets/kernel/qwidgetrepaintmanager.cpp index 183337b693..96f440cd0f 100644 --- a/src/widgets/kernel/qwidgetrepaintmanager.cpp +++ b/src/widgets/kernel/qwidgetrepaintmanager.cpp @@ -90,25 +90,6 @@ bool QWidgetRepaintManager::bltRect(const QRect &rect, int dx, int dy, QWidget * } /*! - Prepares the window surface to paint a\ toClean region of the \a widget. - - The \a toClean region might be clipped by the window surface. -*/ -void QWidgetRepaintManager::beginPaint(QRegion &toClean, QBackingStore *backingStore) -{ - // Always flush repainted areas. - dirtyOnScreen += toClean; - - backingStore->beginPaint(toClean); -} - -void QWidgetRepaintManager::endPaint(QBackingStore *backingStore) -{ - backingStore->endPaint(); - flush(); -} - -/*! Returns the region (in top-level coordinates) that needs repaint and/or flush. If the widget is non-zero, only the dirty region for the widget is returned @@ -1048,7 +1029,10 @@ void QWidgetRepaintManager::paintAndFlush() } #endif - beginPaint(toClean, store); + // Always flush repainted areas + dirtyOnScreen += toClean; + + store->beginPaint(toClean); // Must do this before sending any paint events because // the size may change in the paint event. @@ -1084,7 +1068,9 @@ void QWidgetRepaintManager::paintAndFlush() tlw->d_func()->drawWidget(store->paintDevice(), dirtyCopy, QPoint(), flags, 0, this); } - endPaint(store); + store->endPaint(); + + flush(); } /*! |