Unsolved QX11EmbedContainer::clientClosed() in Qt5?
-
I have been working on a X11 system tray (current code here) which uses the XEmbed protocol to embed tray application into the system tray. I have used
QWindow::fromWinId()
as noted here as the Qt5 replacement forQX11EmbedContainer
, but I'm now at a bit of a loss on how to detect when the client application disconnects from the embedding. (Which causes my system tray to fill up with empty widgets.)QX11EmbedContainer
had a signalclientClosed()
which appears to be what I need, but I couldn't find any way to do this withQWindow
. Any suggestions on what to do here? -
Hi @spillerrec,
Unfortunately, I don't think the
QWindow::fromWinId()
solution contains all the features fromQX11EmbedContainer
. I suggest you subscribe to the Interest mailing list and post there to talk directly to Qt engineers -- perhaps they might have a solution I haven't thought of, or you could request this feature from them. -
You need to pull in xcb and watch for unmap notify events, and act accordingly.