deaa9480a8
The XSizeHints set by X11 clients give a hint to the window manager about size increment, aspect ratio, base, minimum and maximum size, etc. When an X11 client changes those values, there is a good chance that it will affect the actual window size in some way, and mutter rightfully queue a window resize in that case. However, mutter does not check if any of the hints have actually changed and unconditionally queue a window resize whenever a client changes its WM_NORMAL_HINTS property. That can be a problem when a zealous client such as xterm decides to update its WM_NORMAL_HINTS property on resize, because in return mutter will queue a non-user driven resize in the middle of user-driven events, hence defeating the purpose of the META_MOVE_RESIZE_USER_ACTION flag. To avoid that issue, make mutter a bit smarter and avoid queuing a window resize if the XSizeHints haven't actually changed. https://gitlab.gnome.org/GNOME/mutter/-/issues/543