xcb: Compute correct global pointer position in startSystemMoveResize
QWindow::mapToGlobal() expects pos to be in device-independent pixels, while in reality it's in device pixels. We need to use QXcbWindow::mapToGlobal(), which operates on physical pixels. Change-Id: I8dcad5cc1f5d55df7950b36d97af5ce4b983ed54 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
This commit is contained in:
parent
6fee92770d
commit
9d49475e91
@ -2375,8 +2375,7 @@ bool QXcbWindow::startSystemMoveResize(const QPoint &pos, int edges)
|
||||
if (connection()->isUnity())
|
||||
return false; // _NET_WM_MOVERESIZE on this WM is bouncy (WM bug?).
|
||||
|
||||
const QPoint globalPos = QHighDpi::toNativePixels(window()->mapToGlobal(pos), window()->screen());
|
||||
doStartSystemMoveResize(globalPos, edges);
|
||||
doStartSystemMoveResize(mapToGlobal(pos), edges);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
Loading…
Reference in New Issue
Block a user