From bbb431d0fde30dbc28be5c964bc2402e68751495 Mon Sep 17 00:00:00 2001 From: ERAMOTO Masaya Date: Thu, 28 Dec 2017 14:44:20 +0900 Subject: [PATCH] tools/bluetooth-player: Add generator for player/item Change-Id: I7c86e9046b5d6cf63bf38eb731d6f09b2c70a779 Signed-off-by: Amit Purwar --- tools/bluetooth-player.c | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/tools/bluetooth-player.c b/tools/bluetooth-player.c index a40d5e2..1f42cc4 100755 --- a/tools/bluetooth-player.c +++ b/tools/bluetooth-player.c @@ -75,6 +75,27 @@ static bool check_default_player(void) return TRUE; } +static char *generic_generator(const char *text, int state, GList *source) +{ + static int index = 0; + + if (!state) { + index = 0; + } + + return g_dbus_proxy_path_lookup(source, &index, text); +} + +static char *player_generator(const char *text, int state) +{ + return generic_generator(text, state, players); +} + +static char *item_generator(const char *text, int state) +{ + return generic_generator(text, state, items); +} + static void play_reply(DBusMessage *message, void *user_data) { DBusError error; @@ -911,9 +932,12 @@ static const struct bt_shell_menu main_menu = { .name = "main", .entries = { { "list", NULL, cmd_list, "List available players" }, - { "show", "[player]", cmd_show, "Player information" }, - { "select", "", cmd_select, "Select default player" }, - { "play", "[item]", cmd_play, "Start playback" }, + { "show", "[player]", cmd_show, "Player information", + player_generator}, + { "select", "", cmd_select, "Select default player", + player_generator}, + { "play", "[item]", cmd_play, "Start playback", + item_generator}, { "pause", NULL, cmd_pause, "Pause playback" }, { "stop", NULL, cmd_stop, "Stop playback" }, { "next", NULL, cmd_next, "Jump to next item" }, @@ -935,8 +959,10 @@ static const struct bt_shell_menu main_menu = { "List items of current folder" }, { "search", "", cmd_search, "Search items containing string" }, - { "queue", "", cmd_queue, "Add item to playlist queue" }, - { "show-item", "", cmd_show_item, "Show item information" }, + { "queue", "", cmd_queue, "Add item to playlist queue", + item_generator}, + { "show-item", "", cmd_show_item, "Show item information", + item_generator}, {} }, }; -- 2.7.4