summaryrefslogtreecommitdiff
path: root/shared
diff options
context:
space:
mode:
authorDerek Foreman <derek.foreman@collabora.com>2022-06-22 12:05:23 -0500
committerDerek Foreman <derek.foreman@collabora.com>2022-06-22 12:05:23 -0500
commitaf5161870831ccf576c31afe26a4b471f4fa8a1e (patch)
tree7be68e9c004f027b30134abac98d62dd440b7ba2 /shared
parent769e4376c6c5af7a330d0bd0c0c846dffdc63e3a (diff)
downloadweston-af5161870831ccf576c31afe26a4b471f4fa8a1e.tar.gz
xwayland/window-manager: Add support for _NET_FRAME_EXTENTS
https://specifications.freedesktop.org/wm-spec/1.4/ar01s05.html says "The Window Manager MUST set _NET_FRAME_EXTENTS to the extents of the window's frame", so this is probably something we should be doing. Some programs (such as some versions of Firefox) expect this to be present, and will render popups in wrong locations if it's not. Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
Diffstat (limited to 'shared')
-rw-r--r--shared/xcb-xwayland.c1
-rw-r--r--shared/xcb-xwayland.h1
2 files changed, 2 insertions, 0 deletions
diff --git a/shared/xcb-xwayland.c b/shared/xcb-xwayland.c
index 737c82a5..d72a15a9 100644
--- a/shared/xcb-xwayland.c
+++ b/shared/xcb-xwayland.c
@@ -78,6 +78,7 @@ x11_get_atoms(xcb_connection_t *connection, struct atom_x11 *atom)
{ "WM_S0", F(wm_s0) },
{ "WM_CLIENT_MACHINE", F(wm_client_machine) },
{ "WM_CHANGE_STATE", F(wm_change_state) },
+ { "_NET_FRAME_EXTENTS", F(net_frame_extents) },
{ "_NET_WM_CM_S0", F(net_wm_cm_s0) },
{ "_NET_WM_NAME", F(net_wm_name) },
{ "_NET_WM_PID", F(net_wm_pid) },
diff --git a/shared/xcb-xwayland.h b/shared/xcb-xwayland.h
index 7b233ede..8157240c 100644
--- a/shared/xcb-xwayland.h
+++ b/shared/xcb-xwayland.h
@@ -40,6 +40,7 @@ struct atom_x11 {
xcb_atom_t wm_s0;
xcb_atom_t wm_client_machine;
xcb_atom_t wm_change_state;
+ xcb_atom_t net_frame_extents;
xcb_atom_t net_wm_cm_s0;
xcb_atom_t net_wm_name;
xcb_atom_t net_wm_pid;