aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickthreadedwindowmanager.cpp
diff options
context:
space:
mode:
authorJerome Pasion <jerome.pasion@digia.com>2012-11-02 14:59:56 +0100
committerJerome Pasion <jerome.pasion@digia.com>2012-11-02 15:02:08 +0100
commit47c45bb1e487b3823281683c1110d9269f144582 (patch)
tree4c687d46d9aa7d90f064a25e6c7f0241ae28e16d /src/quick/items/qquickthreadedwindowmanager.cpp
parent677be9a27770ff48dd771ec4fc1c66139aac4aa8 (diff)
parent7d94fa8e074ba816751c60bd0ad3c63b3c0b0a27 (diff)
Merge branch 'master' of ssh://codereview.qt-project.org/qt/qtdeclarative into newdocs
Diffstat (limited to 'src/quick/items/qquickthreadedwindowmanager.cpp')
-rw-r--r--src/quick/items/qquickthreadedwindowmanager.cpp25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/quick/items/qquickthreadedwindowmanager.cpp b/src/quick/items/qquickthreadedwindowmanager.cpp
index 50bd569496..fac4fb034f 100644
--- a/src/quick/items/qquickthreadedwindowmanager.cpp
+++ b/src/quick/items/qquickthreadedwindowmanager.cpp
@@ -43,6 +43,7 @@
#include "qquickthreadedwindowmanager_p.h"
#include <QtCore/QTime>
+#include <QtCore/QDebug>
#include <QtGui/QOpenGLContext>
#include <QtGui/private/qguiapplication_p.h>
@@ -396,20 +397,24 @@ void QQuickRenderThreadSingleContextWindowManager::run()
WindowData *windowData = it.value();
QQuickWindowPrivate *windowPrivate = QQuickWindowPrivate::get(window);
- Q_ASSERT(windowPrivate->isRenderable());
-
- gl->makeCurrent(window);
+ if (windowPrivate->isRenderable()) {
+ gl->makeCurrent(window);
- if (windowData->viewportSize != windowData->windowSize) {
+ if (windowData->viewportSize != windowData->windowSize) {
#ifdef THREAD_DEBUG
- printf(" RenderThread: --- window has changed size...\n");
+ printf(" RenderThread: --- window has changed size...\n");
#endif
- windowData->viewportSize = windowData->windowSize;
- windowData->sizeWasChanged = true;
- glViewport(0, 0, windowData->viewportSize.width(), windowData->viewportSize.height());
- }
+ windowData->viewportSize = windowData->windowSize;
+ windowData->sizeWasChanged = true;
+ glViewport(0, 0, windowData->viewportSize.width(), windowData->viewportSize.height());
+ }
- windowPrivate->syncSceneGraph();
+ windowPrivate->syncSceneGraph();
+ } else {
+ qWarning().nospace()
+ << "Non-renderable window " << window
+ << " (" << window->geometry() << ").";
+ }
}
inSync = false;