summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qbackingstore_p.h
diff options
context:
space:
mode:
authorBjørn Erik Nilsen <bjorn.nilsen@nokia.com>2010-04-16 12:52:05 (GMT)
committerBjørn Erik Nilsen <bjorn.nilsen@nokia.com>2010-04-16 14:58:08 (GMT)
commit8ebcd4db8d57b7e90ec86c9290682ee9c2e576b7 (patch)
treeb1a001064ec08a3dc64e098e635255af100105ce /src/gui/painting/qbackingstore_p.h
parent74f28819d985984170964d12d8f527034db93017 (diff)
downloadQt-8ebcd4db8d57b7e90ec86c9290682ee9c2e576b7.zip
Qt-8ebcd4db8d57b7e90ec86c9290682ee9c2e576b7.tar.gz
Qt-8ebcd4db8d57b7e90ec86c9290682ee9c2e576b7.tar.bz2
Some QWindowSurface implementations might implement flush as a buffer
flip. Such window surfaces therefore destroy the contents during flush. In order to render correctly on these surfaces, any update, no matter how small, needs to trigger the entire window to be redrawn. Auto test included. Task-number: Relates to QTBUG-9978 Reviewed-by: tom
Diffstat (limited to 'src/gui/painting/qbackingstore_p.h')
-rw-r--r--src/gui/painting/qbackingstore_p.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gui/painting/qbackingstore_p.h b/src/gui/painting/qbackingstore_p.h
index 02c0f7c..6510b57 100644
--- a/src/gui/painting/qbackingstore_p.h
+++ b/src/gui/painting/qbackingstore_p.h
@@ -91,6 +91,7 @@ public:
inline bool isDirty() const
{
return !(dirtyWidgets.isEmpty() && dirty.isEmpty() && !hasDirtyFromPreviousSync
+ && !fullUpdatePending
#if defined(Q_WS_QWS) && !defined(QT_NO_QWS_MANAGER)
&& !hasDirtyWindowDecoration()
#endif
@@ -115,7 +116,8 @@ private:
#ifdef Q_BACKINGSTORE_SUBSURFACES
QList<QWindowSurface*> subSurfaces;
#endif
- bool hasDirtyFromPreviousSync;
+ uint hasDirtyFromPreviousSync : 1;
+ uint fullUpdatePending : 1;
QPoint tlwOffset;