Skip to content

Add a Wallpaper kcm, to set wallpaper for any screen

Méven Car requested to merge work/meven/wallpaper-kcm into master

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)

image

Previous screenshot of state Screenshot_20231115_172338 image

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.

Edited by Méven Car

Merge request reports

Loading