| Upstream-Status: Submitted |
| Signed-off-by: Ross Burton <ross.burton@intel.com> |
| |
| From 43d4b19ab611d844156e26c4840cc54ddb73ae03 Mon Sep 17 00:00:00 2001 |
| From: Ross Burton <ross.burton@intel.com> |
| Date: Thu, 26 Feb 2015 17:17:05 +0000 |
| Subject: [PATCH] gtk-play: show a file chooser if no URIs were passed |
| |
| --- |
| gtk/gtk-play.c | 28 ++++++++++++++++++++++++++-- |
| 1 file changed, 26 insertions(+), 2 deletions(-) |
| |
| diff --git a/gtk/gtk-play.c b/gtk/gtk-play.c |
| index f015077..9766a72 100644 |
| --- a/gtk/gtk-play.c |
| +++ b/gtk/gtk-play.c |
| @@ -319,8 +319,32 @@ main (gint argc, gchar ** argv) |
| // FIXME: Add support for playlists and stuff |
| /* Parse the list of the file names we have to play. */ |
| if (!file_names) { |
| - g_print ("Usage: %s FILE(s)|URI(s)\n", APP_NAME); |
| - return 1; |
| + GtkWidget *chooser; |
| + int res; |
| + |
| + chooser = gtk_file_chooser_dialog_new ("Select files to play", NULL, |
| + GTK_FILE_CHOOSER_ACTION_OPEN, |
| + "_Cancel", GTK_RESPONSE_CANCEL, |
| + "_Open", GTK_RESPONSE_ACCEPT, |
| + NULL); |
| + g_object_set (chooser, |
| + "local-only", FALSE, |
| + "select-multiple", TRUE, |
| + NULL); |
| + |
| + res = gtk_dialog_run (GTK_DIALOG (chooser)); |
| + if (res == GTK_RESPONSE_ACCEPT) { |
| + GSList *l; |
| + |
| + l = gtk_file_chooser_get_uris (GTK_FILE_CHOOSER (chooser)); |
| + while (l) { |
| + play.uris = g_list_append (play.uris, l->data); |
| + l = g_slist_delete_link (l, l); |
| + } |
| + } else { |
| + return 0; |
| + } |
| + gtk_widget_destroy (chooser); |
| } else { |
| guint i; |
| |
| -- |
| 1.7.10.4 |
| |