We ported units to use the PlasmaCore.Units singleton earlier; now it's
time to do the same thing for PlasmaCore.Theme.
There are no UI changes or regressions detected.
The context property version is slower to access and won't be supported
in Qt6. Let's port away from it and use the singleton version instead.
Here was my full process for making this change:
1. Made the change with `find . -name '*.qml' | xargs perl -pi -e 's/units\./PlasmaCore\.Units\./g'`
2. Verified no more occurrences with `grep -r " units."`
3. Made sure this didn't change any comments in a silly way by inspecting the output of `git diff | grep "+ " | grep "//"`
4. Manually inspected the full git diff to make sure there were no other unintentional or silly changes (there were none)
5. verified that all changed files have the PlasmaCore import with the correct name with `for FILE in `git status | grep modified | cut -d ":" -f 3`; do grep -q "as PlasmaCore" $FILE || echo "$FILE needs the PlasmaCore import"; done`
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>) { ... }
In the past, this applet naively passed the URL to KRun when clicked on
or something was dragged on top of it. However during porting away from
KRun, it was ported to KIO::ApplicationLauncherJob, which only handles
applications, not other types of URLs.
This commit fixes that by making it use KIO::OpenURLJob (which can
handle applications as well as arbitrary URLs) when it's clicked on. We
also short-circuit the application-specific logic when something is
dragged on it and it's not an application, which allows the
non-application logic to be reached.
BUG: 427797
FIXED-IN: 5.20.3
This begins the process of porting plasma-workspace to PlasmaComponents3. At
this point, only the relatively easy work is done. Every file not ported
now has been given the reason for still using PC2 in a comment on the import
line so you can see at a glance what the blocker is by running
`grep -r "org.kde.plasma.components 2.0"` in the repo.
Everything is tested and there are no breakages or functional regressions. In
the process, a few unused imports are removed.
Here are the remaining PC3 omissions blocking what's left from getting easily
ported:
- No Highlight
- No ListItem
- No PageStack
- No ContextMenu
- No QueryDialog
- No ModelContextMenu
- TabBar has no left and right tab states
- ToolButton has no built-in method to show a menu when clicked
Test Plan:
Open the Application Launcher, right click any app -> Add to Panel (Widget),
then click the icon on the panel, it should launch.
Reviewers: #plasma, broulik, dfaure
Reviewed By: dfaure
Subscribers: dfaure, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D29687
Summary: And use KNotificationJobUiDelegate in case of errors
Test Plan: Untested other than compilation
Reviewers: broulik, davidedmundson
Reviewed By: broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D29124
Creating a KFileItemList with a KFileItem with a URL that doesn't have a scheme triggers an assert in KFileItemListProperties.
It doesn't really make sense to have anyway.
Differential Revision: https://phabricator.kde.org/D26516
Summary: KFileUtils::suggestName() is a drop-in replacement, just moved to another library
Test Plan: builds
Reviewers: #plasma, apol
Reviewed By: apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23996
Summary: We changed the desktop shadows in 10278e79f116, but we also need to reflect this change in the Icon applet which renders its own label and shadows.
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21546