summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/kernel/qwindow.cpp')
-rw-r--r--src/gui/kernel/qwindow.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp
index 3b12768678..a2447e282a 100644
--- a/src/gui/kernel/qwindow.cpp
+++ b/src/gui/kernel/qwindow.cpp
@@ -1744,7 +1744,11 @@ bool QWindow::nativeEvent(const QByteArray &eventType, void *message, long *resu
*/
QPoint QWindow::mapToGlobal(const QPoint &pos) const
{
- return pos + d_func()->globalPosition();
+ Q_D(const QWindow);
+ if (d->platformWindow && d->platformWindow->isEmbedded(0))
+ return d->platformWindow->mapToGlobal(pos);
+ else
+ return pos + d_func()->globalPosition();
}
@@ -1758,7 +1762,11 @@ QPoint QWindow::mapToGlobal(const QPoint &pos) const
*/
QPoint QWindow::mapFromGlobal(const QPoint &pos) const
{
- return pos - d_func()->globalPosition();
+ Q_D(const QWindow);
+ if (d->platformWindow && d->platformWindow->isEmbedded(0))
+ return d->platformWindow->mapFromGlobal(pos);
+ else
+ return pos - d_func()->globalPosition();
}