file chooser: Make Escape work in search entry

Arrange things so that hitting Escape during a running
search stops the search, but leaves the search results
around, and hitting Escape again leaves the search mode.
This commit is contained in:
Matthias Clasen
2015-06-27 01:23:16 -04:00
parent 0f9b87cfeb
commit e0b81faade

View File

@ -6283,8 +6283,6 @@ search_engine_error_cb (GtkSearchEngine *engine,
search_stop_searching (impl, TRUE); search_stop_searching (impl, TRUE);
error_message (impl, _("Could not send the search request"), message); error_message (impl, _("Could not send the search request"), message);
set_busy_cursor (impl, FALSE);
} }
/* Frees the data in the search_model */ /* Frees the data in the search_model */
@ -6323,6 +6321,7 @@ search_stop_searching (GtkFileChooserWidget *impl,
g_signal_handlers_disconnect_by_data (priv->search_engine, impl); g_signal_handlers_disconnect_by_data (priv->search_engine, impl);
g_object_unref (priv->search_engine); g_object_unref (priv->search_engine);
priv->search_engine = NULL; priv->search_engine = NULL;
set_busy_cursor (impl, FALSE);
} }
} }
@ -6444,6 +6443,9 @@ search_entry_activate_cb (GtkFileChooserWidget *impl)
static void static void
search_entry_stop_cb (GtkFileChooserWidget *impl) search_entry_stop_cb (GtkFileChooserWidget *impl)
{ {
if (impl->priv->search_engine)
search_stop_searching (impl, FALSE);
else
g_object_set (impl, "search-mode", FALSE, NULL); g_object_set (impl, "search-mode", FALSE, NULL);
} }