Add a Wallpaper kcm, to set wallpaper for any screen
Allow to set wallpaper on any screen. Updates its content when another element updates the wallpaper, screens or activity. Allows to change wallpaper plugin, Support defaults button, and handle settings highlight.
Tries to share the already implemented components, but had to change the qml for the configuration UI.
TODO:
- rework commit history
No part of this MR but probably following, a "desktop kcm" to setup folders/view icons.
Suggestions welcome, but please take into account the target design: https://phabricator.kde.org/T12622#222913 albeit simplified
Targets: https://phabricator.kde.org/T12622
Requires systemsettings!269 (merged) frameworks/kcmutils!177 (merged) !3541 (merged)
Needs plasma-desktop!1765 (merged)
One thing to note, is that it breaks (slightly) the API for image plugin configuration that won't be able to load in the kcm until they are ported the same way I do in this MR for image and slideshow plugins. They still be loadable in the plasma wallpaper settings dialog. The breakage are:
The configuration must not use import org.kde.plasma.plasmoid
, have a property property var screenSize: Qt.size(Screen.width, Screen.height)
if the plugin need screen related things, and properties property var configDialog
and property var wallpaperConfiguration: wallpaper.configuration
, that were previously provided by import org.kde.plasma.plasmoid
.