BUG: 427530
Hunting this one down since mid-March...
In "native" Plasma containments like the panel, desktop, and plasmawindowed, the `LogindSessionBackend` in `libkworkspace` enters the "Ready" state nearly instantly, before any signals can even be attached. In other containments like Latte Dock and plasmoidviewer, however, the initialization takes some time to complete (unsure why). RootModel was not watching or waiting to check what the session backend's state was, resulting in validity checks being done too soon and never checked again.
(cherry picked from commit 2cc819f39b)
Before this commit ThemesModel only finds metadata.desktop, but after
KF5.94, the default theme metadata files have been ported to json format.
BUG: 453830
(cherry picked from commit 10aa9bb8dc)
When an applet is about to be deleted, it will save its config
automatically, but in this case the system tray doesn't need to load the
config again.
BUG: 453726
(cherry picked from commit 6da91d053b)
The width of the action area needs to be substracted in contentItem's
width.
Also use `Kirigami.Units.gridUnit * 4` because `overlayWidth` was
introduced in Frameworks 5.94, and people using Plasma 5.24 may have an
older Frameworks version.
In case both IconName and IconPixmap are provided, the system tray
applet is going to prefer the pixmap.
That can create a dark icon on dark background bug because plasma can't
recolor pixmaps.
The SNI spec recommends visualizations to prefer icons over pixmaps:
> An icon can either be identified by its Freedesktop-compliant icon
> name, carried by this property of by the icon data itself, carried by
> the property IconPixmap. Visualizations are encouraged to prefer icon
> names over icon pixmaps if both are available (FIXME: still not very
> defined: could e the pixmap used as fallback if an icon name is not found?)
BUG: 418996
(cherry picked from commit 7363d0e0f3)
28537cf3ff made the color dynamic, but
neglected to respect the Plasma color scheme, if any. This causes
problems with Plasma themes that have their own colors and don't
respect the systemwide color scheme, such as Breeze Twilight.
Fix it by using the appropriate colors from the PlasmaCore color scheme
object, not the systemwide object provided by Qt.
BUG: 453348
FIXED-IN: 5.24.6
(cherry picked from commit 19d9bc7e39)
It used to cause an error like this:
[03:21:31.246] (WW) GREETER: file:///usr/share/sddm/themes/breeze/KeyboardButton.qml:19: TypeError: Cannot read property 'shortName' of null
(cherry picked from commit 2e9020ca6c)
Amends c067d4985a.
Having `preferredWidth: 1` set on an only item that also stretches with
fillWidth AND without top-to-bottom sizing (fixed size imposed by
parent component) doesn't really make sense. It naturally increased row
layout's implicitWidth by only 1, and that value were used as an input
to the final width expression (bottom-up sizing).
This patch fixes the sizing model to be strictly implicit bottom-up and
explicit top-down, and so the slider no longer collapses.
BUG: 446185
(cherry picked from commit 2861d1fca3)
In the past, application Favorites were stored with their .desktop file path
such as "/usr/share/applications/org.kde.dolphin.desktop". But now those
entries are stored like so: "applications:org.kde.dolphin.desktop".
This commit converts old DB entries to the new style, which solves the issue
of users with old databases being unable to change their Favorite items.
BUG: 385814
FIXED-IN: 5.24.5
(cherry picked from commit ff446e235e)
Kolourpaint has hidden "Tools" menu, which would show up in
global menu otherwise.
Moreover, don't `void*` cast so QML can access the `QAction`
BUG: 443505
(cherry picked from commit 2e056ed6e5)
This reverts commit ee1cd1ab77.
There will be a crash after the dialog is opened for the second time if
an installation is in progress, because the dialog component is not
deleted after QtQuickDialogWrapper is destructed.
CCBUG: 452865
The baloo runner plugin was missing the category "Text" in the matches, which
caused many files to be inaccessible from KRunner even though they are indexed
and relevant. This change fixes the missing results and correctly finds all
relevant files.
(cherry picked from commit bd397f89e1)
dateTimeChanged is called every second. This in turn checks if the date
has changed. If so we call setupLabels which updates the clock.
The date label used to use main.currentTime which is a value set in the
binding of the timeLabel's text property. The order of this being
updated vs running this code is undefined.
Bug 1: We compare an ever so slightly different date source to the one
used in the date text label.
Bug 2: We are not necessarily updating the date label with the most
updated time.
Overall we can't mix declarative and imperative design patterns. This
patch commits to being imperative and introduces a function to get the
current time so that the date label and time label will always get the
most up to date value even if they update from different trigers.
BUG: 452554
FIXED-IN: 5.24.5
(cherry picked from commit 5430c3a029)
When a service appears right after the ListNames() call finished, but
before the QDBusPendingCallWatcher is set up, the ::serviceRegistered
signal will be queued before the ListNames() response. As a result,
the service will be ignored by DBusServiceObserver.
Switching to QDBusInterface::callWithCallback() ensures that the
result slot is queued as soon as the response arrives, thus avoiding
the race.
Credits go to Sam Edwards for identifying the problem in
https://bugs.kde.org/show_bug.cgi?id=422111#c69
BUG: 422111
(cherry picked from commit 3751f49cc5be219e63c7fae1df9f1b6e77f5762a)
otherwise the dialog may be shrunk beyond the space that the buttonbox
desires resulting in cut off buttons (only when the mainItem is small
enough, naturally)
(cherry picked from commit 1faeaf2e72)
If preferred, compact and full represenation are set to the same value,
the value of appletShouldBeExpanded will be true, which means the applet
will be expanded by default. In this case, only fullRepresentation will
be created and compactRepresentationItem will simply be null.
If compactRepresentationItem is null, also check the fullRepresentation
for mouse event forwarding.
This fixes manage-inputmethod applet not working if it's hidden in the
tray.
(cherry picked from commit 69702475e5)
This fixes "Change Wallpaper..." in System Settings unable to open the
config dialog when the current activity is not the default one.
BUG: 452561
(cherry picked from commit f994e1301f)
The minimumHeight: and minimumWidth: properties were removed by mistake
in 63b8aa0681. This commit re-adds them.
(cherry picked from commit 1c69e1a32f)