This allows people to specify that all of the wallpapers in each folder
need to be displayed before moving onto wallpapers in the next folder.
BUG: 426529
FIXED-IN: 5.23
The wallpaper infrastructure sutures multiple form layouts.
The image wallpaper adds its own Positioning combobox, but the combobox's width does not match that of the two comboboxes right above it.
This patch makes the Positioning combobox as wide as the other two by resuing code already present in ConfigurationContainmentAppearance.qml.
This adds a small cli helper tool which allows you to list what Plasma
themes are available on the system (and which is the current one), as
well as letting you set a theme as the current. It handles being passed
a full path to the theme, though when that happens it just uses the last
bit of the path as the name of the theme.
The latter part allows it to be used by KNewStuff as an adoption
command, and the changes to the knsrc file makes that happen. There is
also a small change which fixes a discrepancy in the naming of the
Plasma Themes dialog, making it consistent with everywhere else that
references Plasma Themes (not sure why they were called styles here,
guessing a really old copy/paste thing).
Additionally, a similar tool for the color and cursor KCMs are also added by
this patch, and the lookandfeeltool binary built by the global themes kcm is
also modified slightly to accept a full path to a package, and added as
an adoption command for those.
The patch also adds a tool which sets wallpapers, which replaces the
failure-prone dbus command previously used as the kns adoption command.
Prior to this change, the use commands would fail if the wallpaper
download payload had a space in the filename (caused, paradoxically, by
the method used to ensure the payload is escaped for shell use).
This patch introduces a new knsrc for wallpapers that's supposed to be
used for mobile devices. While many of the existing wallpapers on the
store do work for mobile use, a great many of them only focus on desktop
style form factors, and since there's mobile-focused categories on the
store now, we probably want to make use of that.
This makes it look better with the change to Kirigami.SwipeListItem to
make the actions always visible on the desktop, and in the process fixes
a binding loop and some minor visual glitches.
We do this sometimes, but not consistenly.
The benefit is twofold.
First it improves the diff when adding new values since no existing line needs to be touched.
Second it prevents clang-format from collapsing the definition into a single line, which is undesired for large enums.
Qt 5.15 introduced new syntax for defining Connections. Fix warnings like this one:
QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }