aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar@sletta.org>2016-12-01 14:17:54 +0100
committerGunnar Sletta <gunnar@sletta.org>2016-12-01 13:52:29 +0000
commitab54d0cab57121055914ff9a750f5ad975fe7525 (patch)
treeffd825cb5ccc4d05191baf3c95a99de26bf8b7f3
parent7723734f7a5888d1e618e9d881a465f5d88315fa (diff)
Fix rendering to an arbitrarily sized FBO
6dda1b425867b76fb001b11f43836c56e24ab7a4 which aimed to fix this was only a partial fix. We need to include the project matrix and the device pixel ratio as well. Change-Id: Icb4ebb386ded00bbd7b9056233b9798efc5a9ee6 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
-rw-r--r--src/quick/items/qquickwindow.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/quick/items/qquickwindow.cpp b/src/quick/items/qquickwindow.cpp
index 722e634fc0..b0871fc173 100644
--- a/src/quick/items/qquickwindow.cpp
+++ b/src/quick/items/qquickwindow.cpp
@@ -454,13 +454,15 @@ void QQuickWindowPrivate::renderSceneGraph(const QSize &size)
fboId = renderTargetId;
renderer->setDeviceRect(rect);
renderer->setViewportRect(rect);
+ renderer->setProjectionMatrixToRect(QRect(QPoint(0, 0), rect.size()));
+ renderer->setDevicePixelRatio(1);
} else {
QRect rect(QPoint(0, 0), devicePixelRatio * size);
renderer->setDeviceRect(rect);
renderer->setViewportRect(rect);
+ renderer->setProjectionMatrixToRect(QRect(QPoint(0, 0), size));
+ renderer->setDevicePixelRatio(devicePixelRatio);
}
- renderer->setProjectionMatrixToRect(QRect(QPoint(0, 0), size));
- renderer->setDevicePixelRatio(devicePixelRatio);
context->renderNextFrame(renderer, fboId);
}