aboutsummaryrefslogtreecommitdiff
path: root/tools/testapp
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2011-01-13 10:11:17 -0600
committerTed Gould <ted@gould.cx>2011-01-13 10:11:17 -0600
commitb76ed9c7f918123610e5e56bb9cdd1025d34caa1 (patch)
tree0905e58eb310c29710bcf881ae87f72904f3f153 /tools/testapp
parentf0c24c976f319d0b087adc0c8bc694cf930aa30b (diff)
parent2cfbfcab8a2c73227619eb3cd7a79e1fe17a8b43 (diff)
downloadlibdbusmenu-b76ed9c7f918123610e5e56bb9cdd1025d34caa1.tar.gz
libdbusmenu-b76ed9c7f918123610e5e56bb9cdd1025d34caa1.tar.bz2
libdbusmenu-b76ed9c7f918123610e5e56bb9cdd1025d34caa1.zip
Import upstream version 0.3.91
Diffstat (limited to 'tools/testapp')
-rw-r--r--tools/testapp/Makefile.in8
-rw-r--r--tools/testapp/main.c49
2 files changed, 34 insertions, 23 deletions
diff --git a/tools/testapp/Makefile.in b/tools/testapp/Makefile.in
index 8a7a441..387c6bb 100644
--- a/tools/testapp/Makefile.in
+++ b/tools/testapp/Makefile.in
@@ -38,7 +38,12 @@ libexec_PROGRAMS = dbusmenu-testapp$(EXEEXT)
subdir = tools/testapp
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/gnome-doc-utils.m4 \
+ $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/intltool.m4 \
+ $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
@@ -207,6 +212,7 @@ USE_NLS = @USE_NLS@
VALA_API_GEN = @VALA_API_GEN@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
+XSLT_PROC = @XSLT_PROC@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
diff --git a/tools/testapp/main.c b/tools/testapp/main.c
index f489407..67e962d 100644
--- a/tools/testapp/main.c
+++ b/tools/testapp/main.c
@@ -26,9 +26,7 @@ License version 3 and version 2.1 along with this program. If not, see
<http://www.gnu.org/licenses/>
*/
#include <glib.h>
-
-#include <dbus/dbus-glib.h>
-#include <dbus/dbus-glib-bindings.h>
+#include <gio/gio.h>
#include <json-glib/json-glib.h>
@@ -117,6 +115,24 @@ void init_menu(DbusmenuMenuitem *root, const char *filename)
}
}
+static void
+on_bus (GDBusConnection * connection, const gchar * name, gpointer user_data)
+{
+ DbusmenuServer *server = dbusmenu_server_new("/MenuBar");
+ DbusmenuMenuitem *root = dbusmenu_menuitem_new_with_id(0);
+ init_menu(root, (gchar *)user_data);
+ dbusmenu_server_set_root(server, root);
+
+ return;
+}
+
+static void
+name_lost (GDBusConnection * connection, const gchar * name, gpointer user_data)
+{
+ g_error("Unable to get name '%s' on DBus", name);
+ return;
+}
+
int main (int argc, char ** argv)
{
g_type_init();
@@ -127,25 +143,14 @@ int main (int argc, char ** argv)
}
const char *filename = argv[1];
- GError * error = NULL;
- DBusGConnection * connection = dbus_g_bus_get(DBUS_BUS_SESSION, NULL);
- DBusGProxy * bus_proxy = dbus_g_proxy_new_for_name(connection, DBUS_SERVICE_DBUS, DBUS_PATH_DBUS, DBUS_INTERFACE_DBUS);
- guint nameret = 0;
-
- if (!org_freedesktop_DBus_request_name(bus_proxy, "org.dbusmenu.test", 0, &nameret, &error)) {
- g_error("Unable to call to request name");
- return 1;
- }
-
- if (nameret != DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER) {
- g_error("Unable to get name");
- return 1;
- }
-
- DbusmenuServer *server = dbusmenu_server_new("/MenuBar");
- DbusmenuMenuitem *root = dbusmenu_menuitem_new_with_id(0);
- init_menu(root, filename);
- dbusmenu_server_set_root(server, root);
+ g_bus_own_name(G_BUS_TYPE_SESSION,
+ "org.dbusmenu.test",
+ G_BUS_NAME_OWNER_FLAGS_NONE,
+ on_bus,
+ NULL,
+ name_lost,
+ (gpointer)filename,
+ NULL);
g_main_loop_run(g_main_loop_new(NULL, FALSE));