https://bugs.winehq.org/show_bug.cgi?id=39440
--- Comment #18 from Stan markau0@lycos.com --- I'll continue to test various things.
This code works for Pipelight but not for a shared Linux library (in a daw host) communicating with a Wine based server.
Linux shared library code
child is __wine_x11_whole_window (from the Wine servers hwnd) sent to the Linux shared library from the Wine server, parent is the daw host plugin window.
display = XOpenDisplay(0); XReparentWindow(display, child, parent, 0, 0); sendXembedMessage(display, child, XEMBED_EMBEDDED_NOTIFY, 0, parent, 0); XMapWindow(display, child); XSync(display, false); XFlush(display); XCloseDisplay(display);
Wine server code
then a message is sent to the Wine server to run ShowWindow(hwnd) and UpdateWindow(hwnd)
If a 1/2 second delay is placed before calling the Wine server code, then it's sort of ok but even that can be hit/miss on different Linux setups.