aboutsummarylogtreecommitdiffstats
path: root/typeahead.patch
diff options
context:
space:
mode:
Diffstat (limited to 'typeahead.patch')
-rw-r--r--typeahead.patch78
1 files changed, 78 insertions, 0 deletions
diff --git a/typeahead.patch b/typeahead.patch
new file mode 100644
index 000000000000..106deb986b13
--- /dev/null
+++ b/typeahead.patch
@@ -0,0 +1,78 @@
+@@ -1391,6 +1391,9 @@
+ {
+ GtkFileChooserWidget *impl = (GtkFileChooserWidget *) widget;
+ GtkFileChooserWidgetPrivate *priv = impl->priv;
++ gtk_widget_grab_focus (priv->browse_files_tree_view);
++ gboolean ret;
++ g_signal_emit_by_name (priv->browse_files_tree_view, "key-press-event", event, &ret);
+
+ if (should_trigger_location_entry (impl, event))
+ {
+@@ -1401,12 +1404,6 @@
+ return TRUE;
+ }
+ }
+- else if (gtk_search_entry_handle_event (GTK_SEARCH_ENTRY (priv->search_entry), (GdkEvent *)event))
+- {
+- if (priv->operation_mode != OPERATION_MODE_SEARCH)
+- operation_mode_set (impl, OPERATION_MODE_SEARCH);
+- return TRUE;
+- }
+
+ if (GTK_WIDGET_CLASS (gtk_file_chooser_widget_parent_class)->key_press_event (widget, event))
+ return TRUE;
+@@ -2478,7 +2475,7 @@
+ {
+ GtkFileChooserWidgetPrivate *priv = impl->priv;
+
+- gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), -1);
++ gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), MODEL_COL_NAME);
+
+ gtk_tree_view_column_set_sort_column_id (priv->list_name_column, MODEL_COL_NAME);
+ gtk_tree_view_column_set_sort_column_id (priv->list_time_column, MODEL_COL_TIME);
+@@ -4392,6 +4389,7 @@
+ gtk_tree_view_set_model (GTK_TREE_VIEW (priv->browse_files_tree_view),
+ GTK_TREE_MODEL (priv->browse_files_model));
+ update_columns (impl, FALSE, _("Modified"));
++ gtk_tree_view_set_enable_search (GTK_TREE_VIEW (priv->browse_files_tree_view), TRUE);
+ file_list_set_sort_column_ids (impl);
+ set_sort_column (impl);
+ profile_msg (" gtk_tree_view_set_model end", NULL);
+@@ -7152,10 +7150,6 @@
+ {
+ GList *l, *files, *files_with_info, *infos;
+ GFile *file;
+- gboolean select = FALSE;
+-
+- if (gtk_tree_model_iter_n_children (GTK_TREE_MODEL (impl->priv->search_model), NULL) == 0)
+- select = TRUE;
+
+ files = NULL;
+ files_with_info = NULL;
+@@ -7183,8 +7177,6 @@
+ g_list_free_full (infos, g_object_unref);
+
+ gtk_stack_set_visible_child_name (GTK_STACK (impl->priv->browse_files_stack), "list");
+- if (select)
+- gtk_widget_grab_focus (impl->priv->browse_files_tree_view);
+ }
+
+ /* Callback used from GtkSearchEngine when the query is done running */
+@@ -7502,6 +7494,7 @@
+ gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (priv->recent_model),
+ GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID,
+ GTK_SORT_DESCENDING);
++ gtk_tree_view_set_enable_search (GTK_TREE_VIEW (priv->browse_files_tree_view), TRUE);
+ }
+
+ typedef struct
+@@ -7519,7 +7512,7 @@
+
+ gtk_tree_view_set_model (GTK_TREE_VIEW (priv->browse_files_tree_view),
+ GTK_TREE_MODEL (priv->recent_model));
+- gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), -1);
++ gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), MODEL_COL_NAME);
+
+ gtk_tree_view_column_set_sort_column_id (priv->list_name_column, -1);
+ gtk_tree_view_column_set_sort_column_id (priv->list_time_column, -1);
+