The existing method was overly complicated given that KPackage can load packages
relative to the default package root. Also it didn't work because QStandardPaths
defaults to LocateFile, not finding any packages.
There's no point in keeping the search text if you're clearing all
entries, since doing that removes all data that the search field would
be searching through.
Otherwise if you search for some text and it produces no results, the
search field becomes disabled so you can't change or clear your search
and use the applet again!
This option is just too nerdy to show a UI for. We keep the logic for it
in the code (it's just two lines) but it's now only available for people
who know about this and manually add "popupOnNewDevice=false" to their
plasma-org.kde.plasma.desktop-appletsrc file.
This prevents the applet from being too cluttered with options with the
new design.
Right now the Device Notifier applet has two settings: what kind of
devices to show, and whether or not to open on new device attachment.
My sense is that nobody knows that these options exist because they're
hidden away in a config window that you can only access by
right-clicking on the item in the system tray.
Furthermore, the setting for what kind of devices to show is more useful
than we give it credit for; when set to "All devices", the applet functions
as an always-visible way to access all of the machine's disks. This is
quite handy.
Accordingly, this commit removes the config window and moves all of the
settings into the main UI of the applet using PlasmoidHeaders--one
header and one footer, exactly like the plasma-pa applet.
With this change, the "Show all devices" feature becomes discoverable:
when you plug in a flash drive or whatever, the applet will pop open,
showing you the combobox that chooses what it will display. In this moment,
you can notice it, play with it, and configure it to show all devices if
you'd like.
Accordingly again, the name of the applet is renamed to "Disks &
Devices" since "Device Notifier" is not an accurate name. It was only
ever accurate when using the applet's default settings, and now that
non-default settings are made more discoverable, it feels appropriate
to give it a more generally appropriate name.
This was previously done in the component itself, but that was removed
in 711789908b0c6c0f76597596d567fba4ae9151ca (plasma-framework). For the
most part, buttons look better without the old minimum width, but these
buttons here relied on that behavior and do in fact look better with it.
So let's set it manually on these buttons.
Better to keep the exact semantics when porting stuff, we can change it later
if we want. (Disregarding that I even got the boolean the wrong way around).
We have a situation where some clients drop their old offer before
creating a new one. This means klipper tries to fill in the empty
clipboard at the same time the client posts its new real contents.
This adds in a flag (via a hidden mimetype) that klipper is trying to
replace a null clipboard. If this flag is set and our clipboard is not
null because the client has updated it in the meantime we ignore the
klipper update.
It's a workaround, rather than an ideal fix at a data level, but it
solves the problem in the interim.
Systemd doesn't like values containing escape sequence \033 and a fix
won't be accepted upstream. Users of QT_MESSAGE_PATTERN might have this
set already. The big problem is then we can fail to update important
variables such as DISPLAY which all comes as one big update.
Right now this functionality is only offered through the context menu,
which of course is not available on touch. This commit adds a simple
toolbutton in the applet's toolbar to show the Energy KCM.
After much much much VDG discussion, it turned out that we don't
actually want to make the System Tray icons scale with the panel. We
returned to that with 31c7ebe319, but one
element remained: to make the icons automatically become a
two/row/column layout for thick panels, as we had for Plasma 5.19 and
earlier. This commit does that, and in the process simplifies the
configuration UI to show only the two options that we decided make sense:
1. Small icons that become two-row/column for thick panels
2. Auto-sizing icons that match the size of other panel widgets
Number one returns to being the default as it was before, and number two
is available for people/themes that want all icons to match in size.
Qt 5.15 introduces a new syntax for connections.
Framework code can't port away due to having to support Qt5.12 which
does not include the new syntax.
This filters out the category.
We should remove this once we depend on Qt5.15 in frameworks.
BUG: 424259
This requires (though not hard) the code found in
https://invent.kde.org/frameworks/knewstuff/-/merge_requests/23 and the
idea behind this is to clean up KNewStuff's knowledge of entries which
have been deleted without telling KNewStuff about it first. This is a
further step towards fixing the bug below.
CCBUG:417985