D6390: WIP: Add remote runners over DBus
David Edmundson
noreply at phabricator.kde.org
Mon Jun 26 11:35:05 UTC 2017
davidedmundson created this revision.
Restricted Application added projects: Plasma, Frameworks.
Restricted Application added subscribers: Frameworks, plasma-devel.
REVISION SUMMARY
This patch allows adding runners which, rather than being in-process
receive a search term and provide results over DBus.
A metadata file should be installed with metadata for the service and
path, and the remote app should implement the supplied interface.
By using metadata files all the current krunner architecture and config
management works seamlessly, and it allows the possibility for a runner
to be DBus activated if it wants to be.
The goal of this patch is threefold:
- To make it considerably easier to write runners where the data exists
in an already running application. The plasma-browser-integration is a
good example, it currently has it's own custom protocol, and ends up
sending data on all the tabs only to filter it inside krunner, somewhat
wasteful. With this adding searchable tabs to konversation (for example)
would be a ten minute patch.
- Make it easy to write a runner in any other language. An app just
needs to speak DBus with no other dependencies. Potentially even shipped
via the store.
- This approach could work for runners in sandboxes.
TEST PLAN
Wrote new sample app
Got my runner showing results
Brief profiling had roundtrip time as 0ms.
REPOSITORY
R308 KRunner
BRANCH
master
REVISION DETAIL
https://phabricator.kde.org/D6390
AFFECTED FILES
src/CMakeLists.txt
src/data/org.kde.krunner1.xml
src/data/servicetypes/plasma-runner.desktop
src/dbusrunner.cpp
src/dbusrunner_p.h
src/dbusutils_p.h
src/runnermanager.cpp
To: davidedmundson, #plasma
Cc: plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart, lukas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20170626/c73cc1ee/attachment.html>
More information about the Plasma-devel
mailing list