Hi Scott, On 19 February 2018 at 19:18, Scott Moreau <ore...@gmail.com> wrote: > Commit 332d1892 introduced a bug because the window was > shaped only when the frame was created, leaving the input > region unchanged regardless if the window was resized. > This patch updates the input region shape on resize, > fixing the problem.
Thanks for this! I've had a look - well, as much of a look into XWM as I can stomach on a Monday morning - and I think it's mostly right, but could be improved a little further. In the override-redirect case, we call frame_resize_inside in the branch closed just above where you added the weston_wm_window_shape() call. That is the first point where we know the window has a different size, so would be the right place to call it. On the other hand, for OR we probably just shouldn't be trying to manage the input mask at all ... ? For non-OR windows, send_configure() is where we send the server a ConfigureRequest (which it will process immediately as we hold the substructure redirect), so we should chase that immediately with the input-region update. That resolves a potential race where we have incoherent input/output size. As Pekka says, there's something fishy about decorate/frame confusion I think. Anyone who put clear and concise comments above decorate/frame explaining what they actually do and when they will actually be set would have my eternal gratitude, because I have to go re-learn what they are every time. :\ Cheers, Daniel _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel