This header needs to be shown only when not in the System Tray and also
when there are multiple mounted removable devices. That's the only
circumstance under which it actually has anything in it.
BUG: 438351
FIXED-IN: 5.22.1
It's possible for the root volume to be on a removable disk. In this
case, don't offer the user the option to eject that disk as it does not
make sense and will fail.
Some applet config titles contain ampersands for mnemonic purposes. PC3.ToolTip filters them out but QQC2.Tooltip does not, so they are visible in the system tray config window.
BUG: 437605
Sometimes parent component on the applet is not fully updated - for
example effectiveStatus is not yet read from the model. In such case it
will have default value leading to undesired effect.
Call all `updateHighlightedItem` in `Qt.callLater` so that it is called
in next event loop. As a bonus it is called only once, which can improve
performance.
BUG: 437105
FIXED-IN: 5.22.0
Now it will say "No matches" when there are no search results, and
"Clipboard is empty" when the clipboard actually is empty.
BUG: 437386
FIXED-IN: 5.23
This code was trying to filter out the configure action but failing
because it was comparing a QMenuItem to a QAction. We need to compare
the QMenuItem's internal QAction in order for the configure action to
ever match.
This applet no longer has a config window with any non-autogenerated
content in it, so it doesn't make sense for the configure button to open
that window rather than the Automount KCM. This is what most other
applets do nowadays; the Disks & Devices applet should be consistent.
It's wrong to check the status of the plasmoid before closing it,
since the status is just the internal state of the plasmoid and
it's changed by actions from the plasmoid itself. So, the Passive
status doesn't indicate that the plasmoid is hidden in the system
tray, because the user can configure to always show this plasmoid.
The notification applet's config window is blank, and only shows the
auto-generated Shortcuts and About pages. This makes it not very useful,
as typically the user will want to get to the KCM instead. Other
applets with blank config windows (such as the Bluetooth and Networks
applets) make the configure button open the KCM instead and nobody has
complained about it, so let's do the same for the Notifications applet.
This has two advantages:
1. Greater consistency among applets
2. The "Clear all" action always appears visibly in the header without
getting pushed into a hamburger menu
3. A cleaner UI than the one merged in
https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/837
BUG: 433140
FIXED-IN: 5.22
This reverts commit 5893574163.
The approach taken in this commit was sub-optimal and not consistent
with what we do for other applets, so it needs to be re-thought.
Right now the applet puts the entries to open the KCM and Energy Info
page in a hamburger menu, while the Configure button opens the applet's
own settings window which has only one item in it. This emphasizes the
less important thing, while de-emphasizing the more important thing.
We can solve this by making the applet's configure button open the KCM
instead of the applet configuration window. This makes the configuration
window inaccessible, so we delete it and move its one setting into the
hamburger menu along with "Show Energy Information". This is okay as
these two are lesser-used settings.
Overall this should make the actions easier to access and use, and more
relevant to the user.
BUG: 407560
FIXED-IN: 5.22
The fact that the commonly-used "Clear History" action appears in a
hamburger menu has been a common user complaint about Plasma 5.21.
This happens because it's defined as an action, and the applet has two
actions ("clear history" and "open KCM") and when there is more than
one action, they all go into a hamburger menu. This makes the
commonly-used clear action more difficult to find that necessary.
A reasonable long-term solution would be to refactor the action
visibility code in plasma-framework to allow the display of more than
one action in the header without always putting them all in a hamburger
menu, or allowing the developer more control over this. However since
that would require frameworks changes, it can't be done in Plasma 5.22
because 5.22 requires Frameworks 5.82 which has already been tagged. So
let's do this simpler fix for now to fix the UX regression.
BUG: 433140
FIXED-IN: 5.22
There is no conceivable use case for turning this off, and the UI is
being removed in https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/447.
So let's remove the backend code too, or else anyone who for some reason
had turned it off would be left without a GUI method of turning it back
on again.
This warning happens because the Digital Clock is using PC2 labels,
which set the pointSize internally. However in this usage of them, we
don't use the pointSize and instead set the pixelSize to make the label
always match the height of a size helper item. This results in both
pointSize and pixelSize being defined. This is an ambiguous situation,
so Qt helpfully ignores pointSize in favor of pixelSize and prints a
warning for us.
Because what we're doing here is intentional, let's explicitly unset
pointSize ourselves so we don't make Qt do it for us. This removes the
noisy warning message that is printed at every plasmashell startup.
Ultimately we need to port these labels to PC3, but that is quite
challenging due to the complicated text sizing logic.