bt_shell_set_prompt(PROMPT_OFF);
}
+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 *session_generator(const char *text, int state)
+{
+ return generic_generator(text, state, sessions);
+}
+
+static char *transfer_generator(const char *text, int state)
+{
+ return generic_generator(text, state, transfers);
+}
+
static void connect_reply(DBusMessage *message, void *user_data)
{
DBusError error;
.name = "main",
.entries = {
{ "connect", "<dev> [uuid]", cmd_connect, "Connect session" },
- { "disconnect", "[session]", cmd_disconnect, "Disconnect session" },
+ { "disconnect", "[session]", cmd_disconnect, "Disconnect session",
+ session_generator },
{ "list", NULL, cmd_list, "List available sessions" },
- { "show", "[session]", cmd_show, "Session information" },
- { "select", "<session>", cmd_select, "Select default session" },
- { "info", "<object>", cmd_info, "Object information" },
- { "cancel", "<transfer>", cmd_cancel, "Cancel transfer" },
- { "suspend", "<transfer>", cmd_suspend, "Suspend transfer" },
- { "resume", "<transfer>", cmd_resume, "Resume transfer" },
+ { "show", "[session]", cmd_show, "Session information",
+ session_generator },
+ { "select", "<session>", cmd_select, "Select default session",
+ session_generator },
+ { "info", "<object>", cmd_info, "Object information",
+ transfer_generator },
+ { "cancel", "<transfer>", cmd_cancel, "Cancel transfer",
+ transfer_generator },
+ { "suspend", "<transfer>", cmd_suspend, "Suspend transfer",
+ transfer_generator },
+ { "resume", "<transfer>", cmd_resume, "Resume transfer",
+ transfer_generator },
{ "send", "<file>", cmd_send, "Send file" },
{ "pull", "<file>", cmd_pull,
"Pull Vobject & stores in file" },