From 37d5aaa4b42f9c837f0d27edb9da2185971d02be Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 11 Jun 2020 09:24:12 +0200 Subject: Change QWindow/QWidget::map(To/From)(Global/Parent) to operate in float Change the functions to operate in float and add the QPoint versions as overload calling them. This is more in-line with the event accessors using float and allows for removing some workarounds using a delta when converting touch points. Leave QPlatformWindow::map(To/From)Global() as is for now and add helpers for float. Change-Id: I2d46b8dbda8adff26539e358074b55073dc80b6f Reviewed-by: Shawn Rutledge Reviewed-by: Volker Hilsheimer --- src/gui/kernel/qplatformwindow.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/gui/kernel/qplatformwindow.cpp') diff --git a/src/gui/kernel/qplatformwindow.cpp b/src/gui/kernel/qplatformwindow.cpp index c6e6afcc91..4b7d7f5b7e 100644 --- a/src/gui/kernel/qplatformwindow.cpp +++ b/src/gui/kernel/qplatformwindow.cpp @@ -266,6 +266,20 @@ QPoint QPlatformWindow::mapToGlobal(const QPoint &pos) const return result; } +QPointF QPlatformWindow::mapToGlobalF(const QPointF &pos) const +{ + const QPoint posPt = pos.toPoint(); + const QPointF delta = pos - posPt; + return mapToGlobal(posPt) + delta; +} + +QPointF QPlatformWindow::mapFromGlobalF(const QPointF &pos) const +{ + const QPoint posPt = pos.toPoint(); + const QPointF delta = pos - posPt; + return mapFromGlobal(posPt) + delta; +} + /*! Translates the global screen coordinate \a pos to window coordinates using native methods. This is required for embedded windows, -- cgit v1.2.3