Bug 464668 - Opening the System Settings pages or KNewStuff dialog doesn't provide launching feedback
Summary: Opening the System Settings pages or KNewStuff dialog doesn't provide launchi...
Status: RESOLVED FIXED
Alias: None
Product: Welcome Center
Classification: Applications
Component: general (other bugs)
Version First Reported In: unspecified
Platform: Other Linux
: NOR minor
Target Milestone: ---
Assignee: Nate Graham
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-22 21:54 UTC by zocsfxljsgpmiuaanz
Modified: 2023-01-24 17:52 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 5.27 with Frameworks 5.103, and 6.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description zocsfxljsgpmiuaanz 2023-01-22 21:54:44 UTC
SUMMARY
Launching the System Settings pages of KDE Connect and Activities, or the KNewStuff dialog doesn't provide launching feedback. This can be confusing, specially, in slower systems, where those programs could take a longer time to open.

STEPS TO REPRODUCE
1. Click in one of the "Open Module Page in System Settings" or "See All Available 3rd-Party Content" buttons in the KDE Connect, Activities or Get Hot New Stuff views inside the "Powerful When Needed" page.
2. Wait for the application to open
3. Observe how, while the related program is opening, there isn't any launch feedback
Comment 1 Nate Graham 2023-01-23 18:01:04 UTC
This is because for those apps, we launch them using KIO::CommandLauncherJob rather than KIO::ApplicationLauncherJob, and ApplicationLauncherJob takes care of wiring up the launch feedback bits automatically, but CommandLauncherJob does not.

We do this because for those, we have to pass command-line arguments to their executables or else run their executable directly because it doesn't have a desktop file, and ApplicationLauncherJob doesn't support those use cases. Maybe I can manually set an icon (or a desktop file, if we have one) for those CommandLauncherJob invocations.
Comment 3 Nate Graham 2023-01-23 20:23:53 UTC
Git commit d5dc658b0271d4e1055aa8a7ca065520fe69c638 by Nate Graham.
Committed on 23/01/2023 at 18:51.
Pushed by ngraham into branch 'master'.

Fix launch feedback for KCMs

We were using CommandLauncherJob which doesn't sire this up by default,
biut that was unnecessary, since KCMs can be launched as apps now. So we
can in fact use ApplicationLauncherJob for them, which fixes this
automatically.

M  +2    -2    src/contents/ui/pages/PowerfulWhenNeeded.qml

https://invent.kde.org/plasma/plasma-welcome/commit/d5dc658b0271d4e1055aa8a7ca065520fe69c638
Comment 4 Nate Graham 2023-01-23 20:42:09 UTC
Git commit d83d3da8ad70068d693a59438d3a4bb2dd15e6cf by Nate Graham.
Committed on 23/01/2023 at 20:42.
Pushed by ngraham into branch 'Plasma/5.27'.

Fix launch feedback for KCMs

We were using CommandLauncherJob which doesn't sire this up by default,
biut that was unnecessary, since KCMs can be launched as apps now. So we
can in fact use ApplicationLauncherJob for them, which fixes this
automatically.


(cherry picked from commit d5dc658b0271d4e1055aa8a7ca065520fe69c638)

M  +2    -2    src/contents/ui/pages/PowerfulWhenNeeded.qml

https://invent.kde.org/plasma/plasma-welcome/commit/d83d3da8ad70068d693a59438d3a4bb2dd15e6cf
Comment 5 Nate Graham 2023-01-24 17:12:20 UTC
Git commit 027ae59732ad876233373ec671d7d81016a067f2 by Nate Graham.
Committed on 24/01/2023 at 17:12.
Pushed by ngraham into branch 'master'.

Install desktop file for knewstuff-dialog

This lets it get launched with KIO::ApplicationLauncherJob. It'ss still
hidden from the user by setting NoDisplay=true on it, because it's kind
of more of an internal utility than a user-facing app.

M  +1    -0    src/tools/knewstuff-dialog/CMakeLists.txt
A  +12   -0    src/tools/knewstuff-dialog/org.kde.knewstuff-dialog.desktop

https://invent.kde.org/frameworks/knewstuff/commit/027ae59732ad876233373ec671d7d81016a067f2
Comment 6 Nate Graham 2023-01-24 17:24:38 UTC
Git commit dd395579987709a1e7c2ae5ed961ef63454cb0b6 by Nate Graham.
Committed on 24/01/2023 at 17:24.
Pushed by ngraham into branch 'kf5'.

Install desktop file for knewstuff-dialog

This lets it get launched with KIO::ApplicationLauncherJob. It'ss still
hidden from the user by setting NoDisplay=true on it, because it's kind
of more of an internal utility than a user-facing app.


(cherry picked from commit 027ae59732ad876233373ec671d7d81016a067f2)

M  +1    -0    src/tools/knewstuff-dialog/CMakeLists.txt
A  +12   -0    src/tools/knewstuff-dialog/org.kde.knewstuff-dialog.desktop

https://invent.kde.org/frameworks/knewstuff/commit/dd395579987709a1e7c2ae5ed961ef63454cb0b6
Comment 7 Nate Graham 2023-01-24 17:31:15 UTC
Git commit 37ebf2909f73c507732875eb3bc712cacf28f8d6 by Nate Graham.
Committed on 24/01/2023 at 17:31.
Pushed by ngraham into branch 'master'.

Show launch feedback for knewstuff-dialog

Requires https://invent.kde.org/frameworks/knewstuff/-/merge_requests/218. Can't go
into 5.27 because we can't guarantee that we'll have the KNewStuff fix, and without
it, this code won't work and the app won't launch at all.
FIXED-IN: 6.0

M  +1    -1    src/contents/ui/pages/PowerfulWhenNeeded.qml

https://invent.kde.org/plasma/plasma-welcome/commit/37ebf2909f73c507732875eb3bc712cacf28f8d6
Comment 8 Nate Graham 2023-01-24 17:48:06 UTC
Git commit 0110e3d03f6ecd211f988aa86d5be80053250b29 by Nate Graham.
Committed on 24/01/2023 at 17:43.
Pushed by ngraham into branch 'master'.

Adjust runCommandAPI to optionally take a desktop file

This allows people to make launch feedback work properly for any apps
they open using runCommand (e.g. because the app has command line args
they want to use, which is not supported by launchApp).

There is no change if no desktop file is specified.

M  +4    -1    src/controller.cpp
M  +1    -1    src/controller.h

https://invent.kde.org/plasma/plasma-welcome/commit/0110e3d03f6ecd211f988aa86d5be80053250b29
Comment 9 Nate Graham 2023-01-24 17:48:56 UTC
Git commit 5db7b4722cb1229459f42a57d56e88932927df03 by Nate Graham.
Committed on 24/01/2023 at 17:48.
Pushed by ngraham into branch 'Plasma/5.27'.

Adjust runCommandAPI to optionally take a desktop file

This allows people to make launch feedback work properly for any apps
they open using runCommand (e.g. because the app has command line args
they want to use, which is not supported by launchApp).

There is no change if no desktop file is specified.


(cherry picked from commit 0110e3d03f6ecd211f988aa86d5be80053250b29)

M  +4    -1    src/controller.cpp
M  +1    -1    src/controller.h

https://invent.kde.org/plasma/plasma-welcome/commit/5db7b4722cb1229459f42a57d56e88932927df03
Comment 10 Nate Graham 2023-01-24 17:51:56 UTC
Git commit 019b186cfd298def389e6779ab067f05a74bfe57 by Nate Graham.
Committed on 24/01/2023 at 17:50.
Pushed by ngraham into branch 'Plasma/5.27'.

Specify desktop file for knewstuff-dialog

This makes launch feedback work in Plasma 5.27 for users with Frameworks
5.103 or later. With an older version of Frameworks, launch feedback
won't work but the app will still launch.
FIXED-IN: 5.27

M  +1    -1    src/contents/ui/pages/PowerfulWhenNeeded.qml

https://invent.kde.org/plasma/plasma-welcome/commit/019b186cfd298def389e6779ab067f05a74bfe57