diff options
Diffstat (limited to 'src/quickwidgets/qquickwidget.cpp')
-rw-r--r-- | src/quickwidgets/qquickwidget.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/quickwidgets/qquickwidget.cpp b/src/quickwidgets/qquickwidget.cpp index 94f00f7d36..00aec0113c 100644 --- a/src/quickwidgets/qquickwidget.cpp +++ b/src/quickwidgets/qquickwidget.cpp @@ -80,7 +80,7 @@ class QQuickWidgetRenderControl : public QQuickRenderControl { public: QQuickWidgetRenderControl(QQuickWidget *quickwidget) : m_quickWidget(quickwidget) {} - QWindow *renderWindow(QPoint *offset) Q_DECL_OVERRIDE { + QWindow *renderWindow(QPoint *offset) override { if (offset) *offset = m_quickWidget->mapTo(m_quickWidget->window(), QPoint()); return m_quickWidget->window()->windowHandle(); @@ -1662,12 +1662,12 @@ void QQuickWidget::paintEvent(QPaintEvent *event) QTransform transform; transform.scale(devicePixelRatioF(), devicePixelRatioF()); //Paint only the updated areas - const auto rects = d->updateRegion.rects(); - for (auto targetRect : rects) { + QRegion targetRegion; + d->updateRegion.swap(targetRegion); + for (auto targetRect : targetRegion) { auto sourceRect = transform.mapRect(QRectF(targetRect)); painter.drawImage(targetRect, d->softwareImage, sourceRect); } - d->updateRegion = QRegion(); } } } |