REPLY_SEND;
}
+DBUS_METHOD( MprisVersion )
+{ /*implemented version of the mpris spec */
+ REPLY_INIT;
+ OUT_ARGUMENTS;
+ VLC_UNUSED( p_this );
+ dbus_uint16_t i_major = VLC_MPRIS_VERSION_MAJOR;
+ dbus_uint16_t i_minor = VLC_MPRIS_VERSION_MINOR;
+ DBusMessageIter version;
+
+ dbus_message_iter_open_container( &args, DBUS_TYPE_STRUCT, NULL, &version );
+ dbus_message_iter_append_basic( &version, DBUS_TYPE_UINT16, &i_major );
+ dbus_message_iter_append_basic( &version, DBUS_TYPE_UINT16, &i_minor );
+ dbus_message_iter_close_container( &args, &version );
+ REPLY_SEND;
+}
+
DBUS_METHOD( PositionGet )
{ /* returns position in milliseconds */
REPLY_INIT;
/* here D-Bus method's names are associated to an handler */
METHOD_FUNC( "Identity", Identity );
+ METHOD_FUNC( "MprisVersion", MprisVersion );
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
}
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+/* MPRIS VERSION */
+#define VLC_MPRIS_VERSION_MAJOR 1
+#define VLC_MPRIS_VERSION_MINOR 0
+
/* DBUS IDENTIFIERS */
/* name registered on the session bus */
#define ADD_BOOL( b ) DBUS_ADD( DBUS_TYPE_BOOLEAN, b )
#define ADD_INT32( i ) DBUS_ADD( DBUS_TYPE_INT32, i )
#define ADD_BYTE( b ) DBUS_ADD( DBUS_TYPE_BYTE, b )
+#define ADD_UINT16( i ) DBUS_ADD( DBUS_TYPE_UINT16, i )
/* XML data to answer org.freedesktop.DBus.Introspectable.Introspect requests */
" <method name=\"Identity\">\n"
" <arg type=\"s\" direction=\"out\" />\n"
" </method>\n"
+" <method name=\"MprisVersion\">\n"
+" <arg type=\"(qq)\" direction=\"out\" />\n"
+" </method>\n"
" </interface>\n"
"</node>\n"
;