Applets were apparently blindly converted to use JSON metadata without
checking the usage. At least KPackage now has a direct getter for the
package metadata, so use that to get the plugin ID instead of manually
loading the package metadata.
BUG: 448529
(cherry picked from commit 7736fc8dfa)
Without deducting margins, the ScrollView can be scrolled horizontally.
The extra space can be seen after removing the scrollbar hack.
(cherry picked from commit fdebefb103)
The original condition will turn the text in the search field into an
unknown character. Move the logic to switch-case to fix the condition.
BUG: 448819
(cherry picked from commit 0a4aeff87b)
The behavior may cause unexpected results when the user spam press Del
in order to delete all characters in the search field, and find that
all items in the list are deleted.
It also causes pressing Del in the search field not deleting the fully
selected text.
BUG: 448738
BUG: 448739
(cherry picked from commit 79344a3b26)
PlasmoidPopupsContainer.qml has special code to handle merging headers
from applets if those applets use a PlasmaComponents3.Page instance as
their FullRepresentation. However this breaks for any applets that use
PlasmaExtras.Representation, which is a subclass of it that we have been
porting applets to over time, because it offers more features in a
single location. This caused the detection to break, so such applets
woudl have their headers improperly merged.
Explicitly detecting the use of PlasmaExtras.Representation as well
fixes it.
BUG: 438178
FIXED-IN: 5.24
(cherry picked from commit 7221ffd1a9)
f9e39815d ("applets/batterymonitor: Improve for desktop systems") changed the
plasmoid to use a plain icon instead of the CompactRepresentation if there are
no batteries.
While 471cc3745 ("applets/batterymonitor: fix CompactRepresentation") brought
the use of the CompactRepresentation back, the plain icon is still used.
For the case that there are no batteries and brightness controls available,
it fell back to "battery", which has no symbolic variant. Change that to use
the symbolic "video-display-brightness" as well.
BUG: 448520
(cherry picked from commit 1b9826d3ce)
The role can provide the untruncated text when the clipboard item being edited has
a very long text.
BUG: 448627
(cherry picked from commit 8f06a8a528)
This nests PC3.TextArea within PC3.ScrollView, so when text is too long,
a vertical scrollbar will be shown.
BUG: 448629
FIXED-IN: 5.24
(cherry picked from commit 25f821608f)
This reverts commit 354f7da871.
Somehow it prevents inhibitions from being visible in the UI. Since the
reason is not yet understood, let's revert for now to prevent releasing
a regression while we investigate.
CCMAIL: me@ratijas.tk
(cherry picked from commit 033d005d62)
Without this, the FullRepresentation opens to an unusably small size
when it's a Panel applet.
BUG: 448383
FIXED-IN: 5.24
(cherry picked from commit 9a6b190046)
In the CompactRepresentation, we can use existing top-level properties
instead of defining and redefining a bunch of new properties at
various levels, which makes the code harder to read and more indirect.
In Wayland session data sources for modifier keys might be unavailable,
in which case the whole `source.data.Alt` is undefined. Standard
JavaScript try-catch didn't help much, because short-circuiting
operator && simply returns left-hand-side `undefined` value which is
falsy. It used to spam error messages to a console at a rate
proportional to the number of top-level menu items:
file:///usr/share/plasma/plasmoids/org.kde.plasma.appmenu/contents/ui/main.qml:112:17:
Unable to assign [undefined] to bool
Amends 156415f377
f9e39815dc introduced a few regressions by
blowing away the custom CompactRepresentation when there are no
batteries. This introduced a race condition that sometimes set the icon
incorrectly and also broke scrolling on the applet to change the volume.
This commit fixes those issues by using the existing infrastructure for
the CompactPepresentation, but simply swapping out its custom battery
icon for normal icon when there are no batteries.
It was nuked years ago, so the id does not exist any longer, and
generated a runtime error like this:
file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/CompactRepresentation.qml:132:
ReferenceError: jobProgressItem is not defined
Amends da86d1e40a
Outside of tablet mode, you don't need a virtual keyboard except for the
extremely niche case of not having a physical keyboard plugged into a
desktop machine. For all other use cases, the tray item to show and
hide the virtual keyboard is an annoyance when you're not in tablet
mode, so let's demote it to the expanded popup to save space in the
System Tray and make its contents more contextually relevant.
Normally we don't use Kirigami in applets, so this might on its face
seem odd, but it's there for a reason, so add a comment explaining why.
GIT_SILENT
the filtermodel only sorts by timestamp of the device, not the actual
types we visualize so you can conceivably have sections appear multiple
times
```
Drives
--------
/dev/sdc
Media Player
------------
/usb/123
Drives
-------
/dev/sdd
```
a device without StorageAccess cannot be mounted, so do not show the
mount default action for it, instead use the file manager action (with
the assumption that the trigger actually knows what to do with it, which
chances are it does not because we ignore the predicate system for some
reason - I've recorded a todo about that)
when then triggering the default action we check if the device supports
MTP and if so run the MTP predicate instead of the openin predicate
the end result is that phones with only MTP actually open via mtp://