aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorCharles Yin <yinyunqiao@gmail.com>2012-03-24 02:17:35 +1000
committerQt by Nokia <qt-info@nokia.com>2012-03-26 06:10:56 +0200
commita329f246c02e2579f6a559c05240f63f0b5d5d3c (patch)
tree4603839448a44a8b3bfa57d6eb19a55e4e90e4da /src
parentadb8811e960876fa00eff621364edba8a79936f7 (diff)
Make sure window manager wakeup() can always wake up
1. Change isExternalUpdatePending to true to avoid window manager sleep again immediately without processing any events 2. Also wake up the window manager if wait at posting sync event Change-Id: I184dba32a66379b688b585c27c4d01799c233e84 Reviewed-by: Martin Jones <martin.jones@nokia.com>
Diffstat (limited to 'src')
-rw-r--r--src/quick/items/qquickwindowmanager.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quick/items/qquickwindowmanager.cpp b/src/quick/items/qquickwindowmanager.cpp
index 61c2ef24b4..bac5cc7582 100644
--- a/src/quick/items/qquickwindowmanager.cpp
+++ b/src/quick/items/qquickwindowmanager.cpp
@@ -1120,7 +1120,8 @@ void QQuickRenderThreadSingleContextWindowManager::maybeUpdate(QQuickCanvas *)
void QQuickRenderThreadSingleContextWindowManager::wakeup()
{
lockInGui();
- if (isRenderBlocked)
+ isExternalUpdatePending = true;
+ if (isRenderBlocked || isPostingSyncEvent)
wake();
unlockInGui();
}