since we can't subclass Dialog (created from QML) inject a class
that will control it with event filters from the shell
(in an eventfilter as well installed on the qapp)
REVIEW:124555
This change introduces the first part of Wayland integration. If
running on platform Wayland we try to bind the org_kde_plasma_shell
interface through the help of KWayland client library. If this interface
is available we can use it to create a PlasmaShellSurface for the
PanelView's window and mark that as a panel.
A compositor with support for the org_kde_plasma_shell interface can
use this information to make the window operate as a panel.
REVIEW: 124054
no warning message about unknown service anymore
panel can be loaded from a template again, so the
"add default panel" option can get reimplemented now
Qt subsystem has deficiencies on their approximation to multiple
screens. [1]
This patch adopts libkscreen to figure out screen additions and primary
modifications.
I'm not merging to master yet as I'm experiencing some issues but it's
already far more comfortable to work with than QGuiApplication::screens().
[1] https://bugreports.qt-project.org/browse/QTBUG-38404
CCMAIL: plasma-devel@kde.org