D8416: really raising window when shown from systray

Martin Flöser noreply at phabricator.kde.org
Sun Oct 22 12:20:05 UTC 2017


graesslin requested changes to this revision.
graesslin added inline comments.
This revision now requires changes to proceed.

INLINE COMMENTS

> kstatusnotifieritem.cpp:653
> +            KWindowSystem::raiseWindow(associatedWidget->winId());
> +            KWindowSystem::forceActiveWindow(associatedWidget->winId());
>              emit q->activateRequested(true, pos);

Please read the documentation of this API call. It is not meant for applications to use this!

Please also note that this won't work on Wayland at all.

The proper way is to ask the systray to raise the window, which then talks to the window manager / wayland compositor to activate it.

Activating from client side is nothing else than focus stealing. If that code worked it means KWin's focus stealing prevention is buggy.

REPOSITORY
  R289 KNotifications

REVISION DETAIL
  https://phabricator.kde.org/D8416

To: mkoller, davidedmundson, graesslin
Cc: #frameworks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20171022/6b64c06d/attachment.html>


More information about the Kde-frameworks-devel mailing list