--- nautilus-2.24.0/libnautilus-private/nautilus-mime-application-chooser.c	2008-07-07 13:31:27.000000000 -0400
+++ hacked/libnautilus-private/nautilus-mime-application-chooser.c	2008-10-07 20:22:20.000000000 -0400
@@ -337,6 +337,22 @@
 }
 
 static void
+reset_clicked_cb (GtkButton *button,
+                  gpointer   user_data)
+{
+	NautilusMimeApplicationChooser *chooser;
+	GError *error;
+	GAppInfo *info;
+	
+	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)
 {
@@ -412,6 +428,14 @@
 	
 	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),
