[OS X/Wayland] using WIds created by a different process to create KMessageBox'es and other widgets/windows
Martin Graesslin
mgraesslin at kde.org
Wed Dec 9 12:51:47 UTC 2015
On Wednesday, December 9, 2015 1:29:41 PM CET René J.V. Bertin wrote:
> KWindowSystem::setMainWindow() is a different matter. Firstly, it does NOT
> use the plugin architecture currently, but simply assumes that
> QWindow::fromWinId() will always work (and never crash).
oh that explains a lot... Like why couldn't I find it in my Wayland backend,
why do random applications crash on Wayland...
> For the time being
> it will thus require ifdefs.
nah, won't help. Well would help for OSX, but not for Linux/Wayland. I think
we need to move it to plugin architecture, too.
> Beyond that, exactly how should I adapt it?
> Never do anything on OS X (the solution used currently in
> KDELibs4/MacPorts)? Or check the result from QWidget::find() and only do
> its job when that function returns a valid pointer (which could actually be
> the general approach if that find() function isn't expensive on platforms
> where calling it is redundant).
>
> Beyond that I suppose that setMainWindow() is *not* the place to push the
> new window to the foreground so that it doesn't get overlooked - or is it?
> In other words, what exactly is the role of KWindowSystem's main window?
It's an X11 thing (like most KWindowSystem methods) for parent-child
relationship. It's not about raising windows, etc. That's up to the windowing
system.
Cheers
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20151209/34bb8aba/attachment.sig>
More information about the Kde-frameworks-devel
mailing list