[Xfce4-commits] <parole:master> Added better filters to media chooser. Opening a folder now works properly.
Sean Davis
noreply at xfce.org
Tue Jul 24 03:50:01 CEST 2012
Updating branch refs/heads/master
to b78df0518014a78232266b188374def82a3a675c (commit)
from abb837f464253d96d3e914b9add428b9e8763428 (commit)
commit b78df0518014a78232266b188374def82a3a675c
Author: Sean Davis <smd.seandavis at gmail.com>
Date: Mon Jul 23 21:48:45 2012 -0400
Added better filters to media chooser. Opening a folder now works properly.
data/interfaces/mediachooser.ui | 2 ++
src/parole-mediachooser.c | 38 ++++++++++++++++++++++++--------------
2 files changed, 26 insertions(+), 14 deletions(-)
diff --git a/data/interfaces/mediachooser.ui b/data/interfaces/mediachooser.ui
index ed98224..cbe19ee 100644
--- a/data/interfaces/mediachooser.ui
+++ b/data/interfaces/mediachooser.ui
@@ -105,6 +105,7 @@
<property name="orientation">vertical</property>
<property name="spacing">1</property>
<property name="create_folders">False</property>
+ <property name="filter">filefilter</property>
<property name="local_only">False</property>
<property name="select_multiple">True</property>
<signal name="file-activated" handler="media_chooser_file_activate_cb" swapped="no"/>
@@ -119,6 +120,7 @@
</object>
</child>
</object>
+ <object class="GtkFileFilter" id="filefilter"/>
<object class="GtkImage" id="image1">
<property name="visible">True</property>
<property name="can_focus">False</property>
diff --git a/src/parole-mediachooser.c b/src/parole-mediachooser.c
index 9ac46a2..c5b7e7f 100644
--- a/src/parole-mediachooser.c
+++ b/src/parole-mediachooser.c
@@ -186,15 +186,16 @@ void media_chooser_file_activate_cb (GtkFileChooser *filechooser, ParoleMediaCho
static void
parole_media_chooser_open_internal (ParoleMediaChooser *media_chooser)
{
- GtkWidget *file_chooser;
- GtkBuilder *builder;
- GtkWidget *recursive;
- GtkWidget *replace;
- GtkWidget *play_opened;
- gboolean scan_recursive;
- gboolean replace_playlist;
- gboolean play;
- const gchar *folder;
+ GtkWidget *file_chooser;
+ GtkBuilder *builder;
+ GtkWidget *recursive;
+ GtkWidget *replace;
+ GtkWidget *play_opened;
+ GtkFileFilter *filter;
+ gboolean scan_recursive;
+ gboolean replace_playlist;
+ gboolean play;
+ const gchar *folder;
builder = parole_builder_new_from_string (mediachooser_ui, mediachooser_ui_length);
@@ -204,12 +205,21 @@ parole_media_chooser_open_internal (ParoleMediaChooser *media_chooser)
gtk_widget_hide( media_chooser->spinner );
file_chooser = GTK_WIDGET (gtk_builder_get_object (builder, "filechooserwidget"));
+ filter = gtk_file_chooser_get_filter (GTK_FILE_CHOOSER (file_chooser));
+
+ gtk_file_filter_set_name( filter, _("Supported files") );
+
+ gtk_file_filter_add_mime_type (GTK_FILE_FILTER (filter), "audio/*");
+ gtk_file_filter_add_mime_type (GTK_FILE_FILTER (filter), "video/*");
+
+ GtkFileFilter *all_files;
+ all_files = gtk_file_filter_new();
+ gtk_file_filter_add_pattern ( all_files, "*");
+
+ gtk_file_filter_set_name( all_files, _("All files") );
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser), parole_get_supported_files_filter ());
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser), parole_get_supported_media_filter ());
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser), parole_get_supported_audio_filter ());
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser), parole_get_supported_video_filter ());
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser), parole_get_supported_playlist_filter ());
+ gtk_file_chooser_add_filter( GTK_FILE_CHOOSER(file_chooser), filter );
+ gtk_file_chooser_add_filter( GTK_FILE_CHOOSER(file_chooser), all_files );
folder = parole_rc_read_entry_string ("media-chooser-folder", PAROLE_RC_GROUP_GENERAL, NULL);
More information about the Xfce4-commits
mailing list