From c5d23e05d09b579a8cb22fe4e079e84615c1fbb4 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Fri, 14 Dec 2012 17:22:54 +0100 Subject: [PATCH] client: Add support for setting controller discoverable mode --- client/main.c | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/client/main.c b/client/main.c index e118f763c..cf73512a3 100644 --- a/client/main.c +++ b/client/main.c @@ -318,6 +318,25 @@ static void cmd_power(const char *arg) g_free(str); } +static void cmd_discoverable(const char *arg) +{ + dbus_bool_t discoverable; + char *str; + + if (parse_argument_on_off(arg, &discoverable) == FALSE) + return; + + str = g_strdup_printf("discoverable %s", + discoverable == TRUE ? "on" : "off"); + + if (g_dbus_proxy_set_property_basic(default_ctrl, "Discoverable", + DBUS_TYPE_BOOLEAN, &discoverable, + generic_callback, str, g_free) == TRUE) + return; + + g_free(str); +} + static void cmd_name(const char *arg) { char *name; @@ -386,13 +405,15 @@ static const struct { char * (*gen) (const char *text, int state); void (*disp) (char **matches, int num_matches, int max_length); } cmd_table[] = { - { "list", NULL, cmd_list, "List available controllers" }, - { "info", "[ctrl]", cmd_info, "Controller information", + { "list", NULL, cmd_list, "List available controllers" }, + { "info", "[ctrl]", cmd_info, "Controller information", ctrl_generator }, - { "select", "", cmd_select, "Select default controller", + { "select", "", cmd_select, "Select default controller", ctrl_generator }, - { "power", "",cmd_power, "Set controller power" }, - { "name", "", cmd_power, "Set controller power" }, + { "name", "", cmd_name, "Set controller local name" }, + { "discoverable", "", cmd_discoverable, + "Set controller discoverable mode" }, { "quit", NULL, cmd_quit, "Quit program" }, { "exit", NULL, cmd_quit }, { "help" }, -- 2.47.3