summaryrefslogtreecommitdiff
path: root/libnautilus-private/nautilus-mime-application-chooser.c
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2008-10-13 12:36:54 +0000
committerAlexander Larsson <alexl@src.gnome.org>2008-10-13 12:36:54 +0000
commit32d109a467c964fa329c9f304f7806e58841bdd7 (patch)
tree636ce54a9224ccc2f63c0b5cc87d98911b40fe48 /libnautilus-private/nautilus-mime-application-chooser.c
parentd9acd8a11fbd4b5e01bc78662b1bdcec83ae9239 (diff)
downloadnautilus-32d109a467c964fa329c9f304f7806e58841bdd7.tar.gz
Allow resetting file associations (#545356) Patch from Matthias Clasen
2008-10-13 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-mime-application-chooser.c: Allow resetting file associations (#545356) Patch from Matthias Clasen svn path=/trunk/; revision=14725
Diffstat (limited to 'libnautilus-private/nautilus-mime-application-chooser.c')
-rw-r--r--libnautilus-private/nautilus-mime-application-chooser.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/libnautilus-private/nautilus-mime-application-chooser.c b/libnautilus-private/nautilus-mime-application-chooser.c
index 416c0014c..7ea444c14 100644
--- a/libnautilus-private/nautilus-mime-application-chooser.c
+++ b/libnautilus-private/nautilus-mime-application-chooser.c
@@ -338,6 +338,20 @@ remove_clicked_cb (GtkButton *button,
}
static void
+reset_clicked_cb (GtkButton *button,
+ gpointer user_data)
+{
+ NautilusMimeApplicationChooser *chooser;
+
+ chooser = NAUTILUS_MIME_APPLICATION_CHOOSER (user_data);
+
+ g_app_info_reset_type_associations (chooser->details->content_type);
+
+ g_signal_emit_by_name (nautilus_signaller_get_current (),
+ "mime_data_changed");
+}
+
+static void
mime_type_data_changed_cb (GObject *signaller,
gpointer user_data)
{
@@ -413,6 +427,14 @@ nautilus_mime_application_chooser_instance_init (NautilusMimeApplicationChooser
chooser->details->remove_button = button;
+ button = gtk_button_new_with_label (_("Reset"));
+ g_signal_connect (button, "clicked",
+ G_CALLBACK (reset_clicked_cb),
+ chooser);
+
+ gtk_widget_show (button);
+ gtk_container_add (GTK_CONTAINER (box), button);
+
g_signal_connect (nautilus_signaller_get_current (),
"mime_data_changed",
G_CALLBACK (mime_type_data_changed_cb),