summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar.sletta@digia.com>2013-05-27 13:56:59 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-05-27 17:56:17 +0200
commit991b817e7521d56862f42aad78568368e16f0f48 (patch)
treec27f13a594c3d98fde075ef6a84d0f59a08e126b /src/gui/painting
parent130ee40b5e29267ad4c58280d700e1c72569ba12 (diff)
Avoid double-highdpi scaling for attached painters.
updateMatrix will us both redirection matrix and highdpi scale matrix, so make sure we don't multiply it in twice. Change-Id: I7394e504746a8de54b4dc79492264deba320538f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Diffstat (limited to 'src/gui/painting')
-rw-r--r--src/gui/painting/qpainter.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp
index d950c4e45f..cfb9d71f5c 100644
--- a/src/gui/painting/qpainter.cpp
+++ b/src/gui/painting/qpainter.cpp
@@ -293,6 +293,7 @@ bool QPainterPrivate::attachPainterPrivate(QPainter *q, QPaintDevice *pdev)
// Update matrix.
if (q->d_ptr->state->WxF) {
q->d_ptr->state->redirectionMatrix = q->d_ptr->state->matrix;
+ q->d_ptr->state->redirectionMatrix *= q->d_ptr->hidpiScaleTransform().inverted();
q->d_ptr->state->redirectionMatrix.translate(-offset.x(), -offset.y());
q->d_ptr->state->worldMatrix = QTransform();
q->d_ptr->state->WxF = false;