diff -ru /gtk+-old/gtk+-2.10.14/gtk/gtkfilechooserdefault.c /gtk+-new/gtk+-2.10.14/gtk/gtkfilechooserdefault.c
--- /gtk+-old/gtk+-2.10.14/gtk/gtkfilechooserdefault.c	2007-07-16 21:44:17.000000000 +0200
+++ /gtk+-new/gtk+-2.10.14/gtk/gtkfilechooserdefault.c	2008-01-10 17:28:04.000000000 +0100
@@ -8278,7 +8278,28 @@
 						    &iter);
   shortcuts_activate_iter (impl, &child_iter);
 
-  gtk_widget_grab_focus (impl->browse_files_tree_view);
+  /* This fixes one bug that caused #419737
+   * Only refocus if the user actually was browsing the tree.
+   * Otherwise files in the tree may get selected.
+   */
+  if (impl->action == GTK_FILE_CHOOSER_ACTION_SAVE
+	|| impl->action == GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER
+	|| ((impl->action == GTK_FILE_CHOOSER_ACTION_OPEN
+	     || impl->action == GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER)
+	    && impl->location_mode == LOCATION_MODE_FILENAME_ENTRY))
+    {
+      g_assert (impl->location_entry != NULL);
+
+      entry_text = gtk_entry_get_text (GTK_ENTRY (impl->location_entry));
+
+      if (impl->browse_files_last_selected_name)
+        do_focus = (compare_utf8_filenames (impl->browse_files_last_selected_name, entry_text) == 0);
+      else
+        do_focus = FALSE;
+
+      if (do_focus)
+        gtk_widget_grab_focus (impl->browse_files_tree_view);
+    }
 }
 
 /* Handler for GtkWidget::key-press-event on the shortcuts list */
