feat: add objectManager interface

refact the way to get DBus interface from Qt Meta System

Signed-off-by: ComixHe <heyuming@deepin.org>
This commit is contained in:
ComixHe
2023-08-18 10:01:52 +08:00
committed by Comix
parent bb83716d27
commit d49a99d252
12 changed files with 165 additions and 71 deletions

View File

@ -4,9 +4,12 @@
<property name="Application" type="o" access="read">
<annotation
name="org.freedesktop.DBus.Description"
value="Object path of the Application.
value="Object path of the Application.
That DBus object will impelement
org.desktopspec.ApplicationManager1.Application."
org.desktopspec.ApplicationManager1.Application.
NOTE:
If the application is uninstalled, this object path
will be set to `/`."
/>
</property>

View File

@ -30,6 +30,5 @@
1. You should use pidfd_open(2) to get a pidfd."
/>
</method>
</interface>
</node>

View File

@ -0,0 +1,19 @@
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "https://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="org.desktopspec.DBus.ObjectManager">
<method name="GetManagedObjects">
<arg name="objectpath_and_interfaces" type="a{oas}" direction="out" />
<annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="ObjectMap"/>
</method>
<signal name="InterfacesAdded">
<arg name="object_path" type="o" />
<arg name="interfaces" type="as" />
</signal>
<signal name="InterfacesRemoved">
<arg name="object_path" type="o" />
<arg name="interfaces" type="as" />
</signal>
</interface>
</node>