[xwm] Jump in size with interactive resize on X11 with CSD windows
Starting an interactive resize on an X11 CSD window causes a jump in size.
Steps to reproduce:
Run gtk3-demo under X11/Xwayland:
$ GDK_BACKEND=x11 gtk3-demo
Resize the window from one of its edges
- There is a jump in the window size which grows of several pixels all at once leaving the pointer far inside the surface
- The window size follows the pointer position giving a continuous resize.
Client side decorations under X11 is achieved by setting the Motif WM hints to set no decorations from the X11 window manager.
Then interactive resize with CSD uses the
_NET_WM_MOVERESIZE protocol, which is handled in weston XWM in
IIUC, that should end up in desktop-shell/shell.c
surface_resize() which gets the surface geometry and resize according to the surface geometry.
However, the surface is actually larger than the window with CSD (due to the drop shadow being part of the client side decorations), so I reckon this is what causes the jump in size.