This bug has been reported to the Debian BTS 9 months ago by Christophe Troestler. It was against Xnest, but the same bug is valid for Xephyr, and I guess Xephyr is more likely to get fixed. Xnest/Xephyr does not set the WM_CLASS property which makes it difficult to treat it specially by window managers. $ xprop XKLAVIER_STATE(INTEGER) = 0, 0 _NET_WM_ICON_GEOMETRY(CARDINAL) = 697, 1018, 200, 32 _NET_WM_STATE(ATOM) = WM_STATE(WM_STATE): window state: Normal icon window: 0x0 _NET_FRAME_EXTENTS(CARDINAL) = 5, 5, 23, 5 _NET_WM_DESKTOP(CARDINAL) = 5 _NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE WM_NORMAL_HINTS(WM_SIZE_HINTS): program specified minimum size: 640 by 480 program specified maximum size: 640 by 480 WM_NAME(STRING) = "Xephyr on :1 ( ctrl+shift grabs mouse and keyboard )" Brice
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Created attachment 14625 [details] [review] Proposed patch. Please review. This works in my hands and should conform to the ICCCM.
Created attachment 14673 [details] [review] Proposed patch. This is slightly cleaner than my last patch. The class hint structure pointer is now just a variable on the stack of hostx_init rather than a part of the global structure, which is unnecessary. I also only allocate and free it once rather than each time in the inner loop, thus saving some churn.
Applied to git, thanks! Note, only applied to Xephyr. If someone wants to fix it for Xnest, yay, please reopen this bug to let me know.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.