It is supposed to broadcast application job progress to multiple interested parties.
However, effectively it was just plasmashell. Cut the middleman, including its never finished and unused UI,
and talk to plasmashell directly.
The applicationjobs dataengine is adjusted to use the new infrastructure instead.
Since it works only in the same process now, Unity launcher API is used to at least broadcast basic
application progress information for use in e.g. Latte Dock.
Also, introduce JobViewServerV2 and JobViewV3 APIs which are using desktop entries for identification rather
than application names, and more importantly are extensible using a QVariantMap hints, so adding new
fields in the future should be significantly less painful with Frameworks, Applications, and Plasma all having
their own release schedule. :)
Summary:
QDBusInterface is a blocking call that calls introspect. We don't need
to introspect.
As this is called on startup this call starts kuiserver, which means
plasma is blocked whilst a whole process spawns, this is a lot worse
than just a regular, ~100ms on my system
Also using the generated versions is generally neater to read.
Test Plan:
Restarted plasmashell
Copied a file
Still had a spinny wheel
Q_DBUS_BLOCKING_CALL_MAIN_THREAD_WARNING_MS=0 doesn't list kuiserver
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D15815
Use own copy of org.kde.JobView interface file to make it possible to
extend the interface without breaking build.
This also fixes 2 cases where error/errorText would be incorrect in
applicationsjob dataengine.
REVIEW: 123046
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
techbase wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:
http://community.kde.org/Frameworks/GitOldHistory
If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.
Branched from the monolithic repo kde-workspace, frameworks branch, at commit
049113e719dd2fc4446d054fa1a3aada330094f0