From 73a653d45a9be59d50f0ae14ab595719565cd32f Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 26 Jan 2012 20:19:33 -0600 Subject: Adding a way for the node2variant to know the name of what it's parsing --- tests/json-loader.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/json-loader.c b/tests/json-loader.c index 36157dc..26fd768 100644 --- a/tests/json-loader.c +++ b/tests/json-loader.c @@ -21,13 +21,13 @@ with this program. If not, see . #include "json-loader.h" -static GVariant * node2variant (JsonNode * node); +static GVariant * node2variant (JsonNode * node, const gchar * name); static void array_foreach (JsonArray * array, guint index, JsonNode * node, gpointer user_data) { GVariantBuilder * builder = (GVariantBuilder *)user_data; - GVariant * variant = node2variant(node); + GVariant * variant = node2variant(node, NULL); if (variant != NULL) { g_variant_builder_add_value(builder, variant); } @@ -38,7 +38,7 @@ static void object_foreach (JsonObject * array, const gchar * member, JsonNode * node, gpointer user_data) { GVariantBuilder * builder = (GVariantBuilder *)user_data; - GVariant * variant = node2variant(node); + GVariant * variant = node2variant(node, member); if (variant != NULL) { g_variant_builder_add(builder, "{sv}", member, variant); } @@ -46,7 +46,7 @@ object_foreach (JsonObject * array, const gchar * member, JsonNode * node, gpoin } static GVariant * -node2variant (JsonNode * node) +node2variant (JsonNode * node, const gchar * name) { if (node == NULL) { return NULL; @@ -105,7 +105,7 @@ set_props (DbusmenuMenuitem * mi, JsonObject * node) if (!g_strcmp0(member, "submenu")) { continue; } JsonNode * lnode = json_object_get_member(node, member); - GVariant * variant = node2variant(lnode); + GVariant * variant = node2variant(lnode, member); if (variant != NULL) { dbusmenu_menuitem_property_set_variant(mi, member, variant); -- cgit v1.2.3 From 5b7844d079fe1579f60c1bc4fbcc5da128c70138 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 26 Jan 2012 20:20:23 -0600 Subject: If we see the 'icon-data' we undo a base64 string and make it a binary --- tests/json-loader.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tests/json-loader.c b/tests/json-loader.c index 26fd768..7f0ec8e 100644 --- a/tests/json-loader.c +++ b/tests/json-loader.c @@ -62,8 +62,17 @@ node2variant (JsonNode * node, const gchar * name) return g_variant_new_double(json_node_get_double(node)); case G_TYPE_BOOLEAN: return g_variant_new_boolean(json_node_get_boolean(node)); - case G_TYPE_STRING: - return g_variant_new_string(json_node_get_string(node)); + case G_TYPE_STRING: { + if (g_strcmp0(name, DBUSMENU_MENUITEM_PROP_ICON_DATA) != 0) { + return g_variant_new_string(json_node_get_string(node)); + } else { + gsize length; + guchar * b64 = g_base64_decode(json_node_get_string(node), &length); + GVariant * retval = g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, b64, length, sizeof(guchar)); + g_free(b64); + return retval; + } + } default: g_assert_not_reached(); } -- cgit v1.2.3 From 767c767a60a7de0fce7031a3e17c30d54e658962 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 30 Jan 2012 16:23:04 -0600 Subject: Unreffing a variant we never had a reference to --- tests/test-glib-proxy-client.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/test-glib-proxy-client.c b/tests/test-glib-proxy-client.c index 2e1e2d2..d20c27c 100644 --- a/tests/test-glib-proxy-client.c +++ b/tests/test-glib-proxy-client.c @@ -152,7 +152,6 @@ layout_verify_timer (gpointer data) GVariant * value = g_variant_new("i", 0); dbusmenu_menuitem_handle_event(menuroot, "clicked", value, layouton); - g_variant_unref(value); return FALSE; } -- cgit v1.2.3 From bd7311b74af63df8ef7ad34a6c56c785c499226a Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 30 Jan 2012 22:42:59 -0600 Subject: Turn off the timeouts that are causing the tests to fail --- tests/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Makefile.am b/tests/Makefile.am index a227916..532c14f 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,5 +1,5 @@ -DBUS_RUNNER=dbus-test-runner +DBUS_RUNNER=dbus-test-runner --max-wait=0 CLEANFILES= DISTCLEANFILES= -- cgit v1.2.3 From 354931b926297679ffebd38a8f3012e250d89895 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 30 Jan 2012 22:56:12 -0600 Subject: Adding the new functions and property to the documentation --- docs/libdbusmenu-glib/reference/libdbusmenu-glib-sections.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/libdbusmenu-glib/reference/libdbusmenu-glib-sections.txt b/docs/libdbusmenu-glib/reference/libdbusmenu-glib-sections.txt index d95ec4c..7f11278 100644 --- a/docs/libdbusmenu-glib/reference/libdbusmenu-glib-sections.txt +++ b/docs/libdbusmenu-glib/reference/libdbusmenu-glib-sections.txt @@ -60,6 +60,7 @@ DBUSMENU_MENUITEM_PROP_TOGGLE_STATE DBUSMENU_MENUITEM_PROP_CHILD_DISPLAY DBUSMENU_MENUITEM_PROP_SHORTCUT DBUSMENU_MENUITEM_PROP_DISPOSITION +DBUSMENU_MENUITEM_PROP_ACCESSIBLE_DESC DBUSMENU_MENUITEM_TOGGLE_CHECK DBUSMENU_MENUITEM_TOGGLE_RADIO DBUSMENU_MENUITEM_TOGGLE_STATE_UNCHECKED @@ -98,10 +99,12 @@ dbusmenu_menuitem_child_find dbusmenu_menuitem_find_id dbusmenu_menuitem_property_set dbusmenu_menuitem_property_set_bool +dbusmenu_menuitem_property_set_byte_array dbusmenu_menuitem_property_set_int dbusmenu_menuitem_property_set_variant dbusmenu_menuitem_property_get dbusmenu_menuitem_property_get_bool +dbusmenu_menuitem_property_get_byte_array dbusmenu_menuitem_property_get_int dbusmenu_menuitem_property_get_variant dbusmenu_menuitem_property_exist -- cgit v1.2.3