Rewrite KScreen KCM as ConfigModule with outputs model and Kirigami
The KScreen KCM was still partly Qt Widgets based. Also it did not use a
model for the outputs but instead created objects in C++ for visual
representation of the outputs.
This patch bases the KScreen KCM on ConfigModule removing any dependency
on Qt Widgets. The former widgets based settings form is rewritten as
Kirigami form layout.
The already existing QML part has been also rewritten with a model as
data provider for the outputs and input handlers for interacting with the
outputs in the overview.
On hotplug events the settings dialog is reset and the user is informed.
Output retention now is set for the whole config instead of individual
outputs what simplifies it.
On Wayland output scaling is now fractional via a slider. This has not yet
been tested though and there might be some more work necessary in KWin.
The output unification has been removed for now. It was broken in certain
ways and we should try instead to improve the libkscreen backend to make
unficiation more easy to use. For now as a workaround the outputs can be
placed on top of each other to create a clone effect.
The KScreen maintainership is changed to me.
Test Plan: Manually on X and Wayland.
Reviewed By: VDG
Subscribers: VDG, GB_2, gvarsanyi, davidedmundson, ngraham, mvourlakos, knambiar, broulik, filipf, plasma-devel
Differential Revision: https://phabricator.kde.org/D22468