From d8029e461ee115ac339f3d7b2062f01ec9c46c40 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Mon, 26 Jun 2023 17:06:24 +0100 Subject: [PATCH] x11: Sync frame extents in X11 native pixels Frame extents are written out over the wire they should be in X11 native pixels. i.e if we are using 200% scaling, and have X11 clients scale themselves then from the point of view of the client reading the properties the window decorations are twice the size as normal. BUG: 471132 --- src/x11window.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/x11window.cpp b/src/x11window.cpp index a53c1860ef..ce5793c9d7 100644 --- a/src/x11window.cpp +++ b/src/x11window.cpp @@ -1413,10 +1413,10 @@ void X11Window::detectNoBorder() void X11Window::updateFrameExtents() { NETStrut strut; - strut.left = borderLeft(); - strut.right = borderRight(); - strut.top = borderTop(); - strut.bottom = borderBottom(); + strut.left = Xcb::toXNative(borderLeft()); + strut.right = Xcb::toXNative(borderRight()); + strut.top = Xcb::toXNative(borderTop()); + strut.bottom = Xcb::toXNative(borderBottom()); info->setFrameExtents(strut); }