diff options
Diffstat (limited to 'src/widgets/kernel/qwidget.cpp')
| -rw-r--r-- | src/widgets/kernel/qwidget.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index d41e80fad00..c2b78e86030 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -4757,6 +4757,7 @@ QPixmap QWidget::grab(const QRect &rectangle) const QWidget::RenderFlags renderFlags = QWidget::DrawWindowBackground | QWidget::DrawChildren | QWidget::IgnoreMask; + const bool oldDirtyOpaqueChildren = d->dirtyOpaqueChildren; QRect r(rectangle); if (r.width() < 0 || r.height() < 0) { // For grabbing widgets that haven't been shown yet, @@ -4772,6 +4773,8 @@ QPixmap QWidget::grab(const QRect &rectangle) if (!d->isOpaque) res.fill(Qt::transparent); render(&res, QPoint(), QRegion(r), renderFlags); + + d->dirtyOpaqueChildren = oldDirtyOpaqueChildren; return res; } |
