Module: wine Branch: master Commit: a128ad5c5b69e59f5da35500cf9facc6699fd460 URL: https://gitlab.winehq.org/wine/wine/-/commit/a128ad5c5b69e59f5da35500cf9facc...
Author: Zhiyi Zhang zzhang@codeweavers.com Date: Wed Jan 3 16:11:17 2024 +0800
winex11.drv: Translate whole_rect to x11 root coordinates in set_size_hints().
whole_rect is in win32 virtual screen coordinates. It needs to be converted to x11 root coordinates for XSetWMNormalHints().
---
dlls/winex11.drv/window.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index a9d6dbf1121..8ab694450ef 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -716,8 +716,9 @@ static void set_size_hints( struct x11drv_win_data *data, DWORD style ) { if (data->hwnd != NtUserGetDesktopWindow()) /* don't force position of desktop */ { - size_hints->x = data->whole_rect.left; - size_hints->y = data->whole_rect.top; + POINT pt = virtual_screen_to_root( data->whole_rect.left, data->whole_rect.top ); + size_hints->x = pt.x; + size_hints->y = pt.y; size_hints->flags |= PPosition; } else size_hints->win_gravity = NorthWestGravity;