diff options
author | John Lindgren <john@jlindgren.net> | 2023-10-11 03:37:46 -0400 |
---|---|---|
committer | John Lindgren <john@jlindgren.net> | 2023-10-14 21:27:34 -0400 |
commit | 6114dd6a838c1c4ebeb5c8f2a66f7c1e628d11d5 (patch) | |
tree | 504d61ac67bad8bae2bee53007e293fa6cf50bf8 /include | |
parent | 0bb445eeffc5bffe4ab0d3ba71f5ff41472232b7 (diff) |
xwayland: stop translating _NET_WM_STRUT_PARTIAL coordinates
Translating the right/bottom coordinates from offsets to absolute
coordinates in wlroots (rather than in the compositor) was supposed to
be more reliable, since wlroots had access to the X11 screen size.
It ended up being less reliable, because the screen size values
(xwm->screen->width_in_pixels/height_in_pixels) are not updated when the
output layout changes.
So let's remove the translation from wlroots, and let the compositor
figure it out. From what I can understand of the current XWayland code,
the X11 screen size should generally match the overall wlr_output_layout
bounding box, which the compositor has access to.
Diffstat (limited to 'include')
-rw-r--r-- | include/wlr/xwayland/xwayland.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/include/wlr/xwayland/xwayland.h b/include/wlr/xwayland/xwayland.h index 240ee3a5..75e9cdac 100644 --- a/include/wlr/xwayland/xwayland.h +++ b/include/wlr/xwayland/xwayland.h @@ -124,8 +124,11 @@ struct wlr_xwayland_surface { xcb_icccm_wm_hints_t *hints; xcb_size_hints_t *size_hints; /* - * _NET_WM_STRUT_PARTIAL (used by e.g. XWayland panels; - * right/bottom are translated into root x/y coordinates) + * _NET_WM_STRUT_PARTIAL (used by e.g. XWayland panels). + * Note that right/bottom values are offsets from the lower + * right corner of the X11 screen, and the exact relation + * between X11 screen coordinates and the wlr_output_layout + * depends on the XWayland implementation. */ xcb_ewmh_wm_strut_partial_t *strut_partial; |