aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib
diff options
context:
space:
mode:
Diffstat (limited to 'libdbusmenu-glib')
-rw-r--r--libdbusmenu-glib/client.c10
-rw-r--r--libdbusmenu-glib/dbus-menu.xml59
-rw-r--r--libdbusmenu-glib/server.c6
3 files changed, 66 insertions, 9 deletions
diff --git a/libdbusmenu-glib/client.c b/libdbusmenu-glib/client.c
index ab307bd..61f1ccf 100644
--- a/libdbusmenu-glib/client.c
+++ b/libdbusmenu-glib/client.c
@@ -351,7 +351,7 @@ id_update (DBusGProxy * proxy, guint id, DbusmenuClient * client)
DbusmenuMenuitem * menuitem = dbusmenu_menuitem_find_id(priv->root, id);
g_return_if_fail(menuitem != NULL);
- org_freedesktop_dbusmenu_get_properties_async(proxy, id, menuitem_get_properties_cb, menuitem);
+ org_ayatana_dbusmenu_get_properties_async(proxy, id, menuitem_get_properties_cb, menuitem);
return;
}
@@ -472,7 +472,7 @@ build_proxies (DbusmenuClient * client)
priv->menuproxy = dbus_g_proxy_new_for_name_owner(priv->session_bus,
priv->dbus_name,
priv->dbus_object,
- "org.freedesktop.dbusmenu",
+ "org.ayatana.dbusmenu",
&error);
if (error != NULL) {
g_warning("Unable to get dbusmenu proxy for %s on %s: %s", priv->dbus_name, priv->dbus_object, error->message);
@@ -647,7 +647,7 @@ static void
menuitem_activate (DbusmenuMenuitem * mi, DbusmenuClient * client)
{
DbusmenuClientPrivate * priv = DBUSMENU_CLIENT_GET_PRIVATE(client);
- org_freedesktop_dbusmenu_call_async (priv->menuproxy, dbusmenu_menuitem_get_id(mi), menuitem_call_cb, mi);
+ org_ayatana_dbusmenu_call_async (priv->menuproxy, dbusmenu_menuitem_get_id(mi), menuitem_call_cb, mi);
return;
}
@@ -689,7 +689,7 @@ parse_layout_xml(DbusmenuClient * client, xmlNodePtr node, DbusmenuMenuitem * it
propdata->item = item;
propdata->parent = parent;
- org_freedesktop_dbusmenu_get_properties_async(proxy, id, menuitem_get_properties_new_cb, propdata);
+ org_ayatana_dbusmenu_get_properties_async(proxy, id, menuitem_get_properties_new_cb, propdata);
} else {
g_warning("Unable to allocate memory to get properties for menuitem. This menuitem will never be realized.");
}
@@ -829,7 +829,7 @@ update_layout (DbusmenuClient * client)
update_layout_cb,
client,
NULL,
- G_TYPE_STRING, "org.freedesktop.dbusmenu",
+ G_TYPE_STRING, "org.ayatana.dbusmenu",
G_TYPE_STRING, "layout",
G_TYPE_INVALID, G_TYPE_VALUE, G_TYPE_INVALID);
diff --git a/libdbusmenu-glib/dbus-menu.xml b/libdbusmenu-glib/dbus-menu.xml
index cca9823..345c736 100644
--- a/libdbusmenu-glib/dbus-menu.xml
+++ b/libdbusmenu-glib/dbus-menu.xml
@@ -28,34 +28,91 @@ License version 3 and version 2.1 along with this program. If not, see
<http://www.gnu.org/licenses/>
-->
<node name="/">
- <interface name="org.freedesktop.dbusmenu">
+ <interface name="org.ayatana.dbusmenu">
<!-- Properties -->
+<!--
+Provides an XML representation of the menu hierarchy
+
+XML syntax:
+
+<menu id="1" revision="2"> # Root container
+ <menu id="2" revision="2"> # First level menu, for example "File"
+ <menu id="3" revision="2"/> ~ Second level menu, for example "Open"
+ <menu id="4" revision="3"/>
+ ...
+ </menu>
+ <menu id="5" revision="2"> # Another first level menu, say "Edit"
+ ...
+ </menu>
+ ...
+</menu>
+-->
<property name="layout" type="s" access="read"/>
<!-- Functions -->
+
+<!--
+Each menu item has a set of properties. Property keys are in menuitem.h:
+
+- visible
+- sensitive
+- label
+- icon
+- icon-data
+- type
+
+"type" property is an enum which can take the following values (client.h):
+
+- menuitem
+- separator
+- imageitem
+-->
<method name="GetProperty">
<arg type="u" name="id" direction="in" />
<arg type="s" name="property" direction="in" />
<arg type="s" name="value" direction="out" />
</method>
+
+<!--
+Convenience method to retrieve all properties in one call (more efficient)
+-->
<method name="GetProperties">
<arg type="u" name="id" direction="in" />
<arg type="a{ss}" name="properties" direction="out" />
</method>
+
+<!--
+This is called by the display to notify the application it should trigger
+the action associated with a specific menu id
+-->
<method name="Call">
<arg type="u" name="id" direction="in" />
</method>
<!-- Signals -->
+<!--
+Triggered by the application to notify display that the property prop from menu id
+as changed to value.
+-->
<signal name="IdPropUpdate">
<arg type="u" name="id" direction="out" />
<arg type="s" name="prop" direction="out" />
<arg type="s" name="value" direction="out" />
</signal>
+
+<!--
+Triggered by the application to notify display that all properties of menu id
+should be considered outdated
+-->
<signal name="IdUpdate">
<arg type="u" name="id" direction="out" />
</signal>
+
+<!--
+Triggered by the application to notify display of a layout update, up to
+revision
+-->
<signal name="LayoutUpdate">
<arg type="i" name="revision" direction="out" />
</signal>
diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c
index 1ac1da6..84bfffe 100644
--- a/libdbusmenu-glib/server.c
+++ b/libdbusmenu-glib/server.c
@@ -161,7 +161,7 @@ dbusmenu_server_class_init (DbusmenuServerClass *class)
g_object_class_install_property (object_class, PROP_DBUS_OBJECT,
g_param_spec_string(DBUSMENU_SERVER_PROP_DBUS_OBJECT, "DBus object path",
"The object that represents this set of menus on DBus",
- "/org/freedesktop/dbusmenu",
+ "/org/ayatana/dbusmenu",
G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS));
g_object_class_install_property (object_class, PROP_ROOT_NODE,
g_param_spec_object(DBUSMENU_SERVER_PROP_ROOT_NODE, "Root menu node",
@@ -472,7 +472,7 @@ _dbusmenu_server_call (DbusmenuServer * server, guint id, GError ** error)
Creates a new #DbusmenuServer object with a specific object
path on DBus. If @object is set to NULL the default object
- name of "/org/freedesktop/dbusmenu" will be used.
+ name of "/org/ayatana/dbusmenu" will be used.
Return value: A brand new #DbusmenuServer
*/
@@ -480,7 +480,7 @@ DbusmenuServer *
dbusmenu_server_new (const gchar * object)
{
if (object == NULL) {
- object = "/org/freedesktop/dbusmenu";
+ object = "/org/ayatana/dbusmenu";
}
DbusmenuServer * self = g_object_new(DBUSMENU_TYPE_SERVER,