Do not change the WS_CHILD style in SetParent.
diff --git a/windows/x11drv/wnd.c b/windows/x11drv/wnd.c
index 52cea74..0418f7f 100644
--- a/windows/x11drv/wnd.c
+++ b/windows/x11drv/wnd.c
@@ -267,7 +267,8 @@
/* Create the X window (only for top-level windows, and then only */
/* when there's no desktop window) */
- if (!(cs->style & WS_CHILD) && (X11DRV_GetXRootWindow() == DefaultRootWindow(display)))
+ if ((X11DRV_GetXRootWindow() == DefaultRootWindow(display))
+ && (wndPtr->parent->hwndSelf == GetDesktopWindow()))
{
Window wGroupLeader;
XWMHints* wm_hints;
@@ -446,7 +447,6 @@
if( pWndParent == pDesktop )
{
- wndPtr->dwStyle &= ~WS_CHILD;
if( X11DRV_GetXRootWindow() == DefaultRootWindow(display) )
{
CREATESTRUCTA cs;
@@ -474,7 +474,6 @@
{
if( !( wndPtr->dwStyle & WS_CHILD ) )
{
- wndPtr->dwStyle |= WS_CHILD;
if( wndPtr->wIDmenu != 0)
{
DestroyMenu( (HMENU) wndPtr->wIDmenu );