From 52a4aa6fb58f5cb31a2934d2a1635f4067e19835 Mon Sep 17 00:00:00 2001 From: Isaac Freund Date: Mon, 29 Apr 2024 16:56:04 +0200 Subject: [PATCH] xdg-shell: document resize with "none" edges Current compositor behavior here is not terribly consistent: Both Weston and Mutter ignore resize requests with "none" edges. wlroots currently kills the client with a protocol error but allowed compositors using the wlroots library to decide what to do in the past before this behavior was accidentally changed. Sending a protocol here is a wlroots bug in my opinion since the none enum variant exists and the invalid_resize_edge protocol error is only specified to be sent for values that do not match an enum variant. KWin seems to treat a resize with "none" edges the same as a move request, which is quite strange. I would consider this a bug as well. This patch recommends that compositors ignore resize requests with "none" edges in the interest of increasing client portability. Signed-off-by: Isaac Freund --- stable/xdg-shell/xdg-shell.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/stable/xdg-shell/xdg-shell.xml b/stable/xdg-shell/xdg-shell.xml index 9ef284e..67387f8 100644 --- a/stable/xdg-shell/xdg-shell.xml +++ b/stable/xdg-shell/xdg-shell.xml @@ -818,7 +818,8 @@ The compositor may use this information to update the surface position for example when dragging the top left corner. The compositor may also use this information to adapt its behavior, e.g. choose an appropriate - cursor image. + cursor image. A value of none must not cause a protocol error but should + be ignored by the compositor.