diff options
Diffstat (limited to 'src/widgets/kernel/qwidgetbackingstore_p.h')
-rw-r--r-- | src/widgets/kernel/qwidgetbackingstore_p.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/widgets/kernel/qwidgetbackingstore_p.h b/src/widgets/kernel/qwidgetbackingstore_p.h index c6f6541e1f..2fe58fa4a7 100644 --- a/src/widgets/kernel/qwidgetbackingstore_p.h +++ b/src/widgets/kernel/qwidgetbackingstore_p.h @@ -61,6 +61,7 @@ QT_BEGIN_NAMESPACE class QPlatformTextureList; +class QWidgetBackingStore; struct BeginPaintInfo { inline BeginPaintInfo() : wasFlushed(0), nothingToPaint(0), backingStoreRecreated(0) {} @@ -69,6 +70,23 @@ struct BeginPaintInfo { uint backingStoreRecreated : 1; }; +class QPlatformTextureListWatcher : public QObject +{ + Q_OBJECT + +public: + QPlatformTextureListWatcher(QWidgetBackingStore *backingStore); + void watch(QPlatformTextureList *textureList); + bool isLocked() const { return m_locked; } + +private slots: + void onLockStatusChanged(bool locked); + +private: + bool m_locked; + QWidgetBackingStore *m_backingStore; +}; + class Q_AUTOTEST_EXPORT QWidgetBackingStore { public: @@ -111,6 +129,8 @@ private: QPoint tlwOffset; + QPlatformTextureListWatcher *textureListWatcher; + void sendUpdateRequest(QWidget *widget, bool updateImmediately); static bool flushPaint(QWidget *widget, const QRegion &rgn); |