From 9d5e3ffc335b179b132f7cec84b5692b4696ce44 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 30 Oct 2024 16:24:18 +0100 Subject: [PATCH] QWidget::mapTo/FromGlobal(): Fix transformation for QGraphicsView with offsets Amends 474af0a61d6154006966a775d186687aa8881708. The code had an error showing when the QGraphicsView was not at 0,0 in the window. Task-number: QTBUG-128913 Task-number: QTBUG-52507 Change-Id: Ic228cc7e71ef54dd23c946b9d90f9c45aac793d9 Reviewed-by: Axel Spoerl (cherry picked from commit 733459637e10edca006b0ad9b68299496e1b4ebd) Reviewed-by: Qt Cherry-pick Bot --- src/widgets/kernel/qwidget.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 3c718652f3a..414b91af150 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -12658,8 +12658,8 @@ static MapToGlobalTransformResult mapToGlobalTransform(const QWidget *w) break; } - const QPoint topLeft = w->geometry().topLeft(); - result.transform.translate(topLeft.x(), topLeft.y()); + const auto &geometry = w->geometry(); + result.transform *= QTransform::fromTranslate(geometry.x(), geometry.y()); if (w->isWindow()) break; }