*/
/** @file disobedience/search.c
* @brief Search support
- *
- * TODO:
- * - cleverer focus to implement typeahead find
*/
#include "disobedience.h"
#include "choose.h"
void choose_next_clicked(GtkButton attribute((unused)) *button,
gpointer attribute((unused)) userdata) {
+ gtk_widget_grab_focus(choose_view);
if(!choose_n_search_results)
return;
/* Find the last visible row */
void choose_prev_clicked(GtkButton attribute((unused)) *button,
gpointer attribute((unused)) userdata) {
+ gtk_widget_grab_focus(choose_view);
/* TODO can we de-dupe with choose_next_clicked? Probably yes. */
if(!choose_n_search_results)
return;
static void choose_clear_clicked(GtkButton attribute((unused)) *button,
gpointer attribute((unused)) userdata) {
gtk_entry_set_text(GTK_ENTRY(choose_search_entry), "");
+ gtk_widget_grab_focus(choose_view);
/* We start things off straight away in this case */
initiate_search();
}
+/** @brief Called when the user hits ^F to start a new search */
+void choose_search_new(void) {
+ gtk_editable_select_region(GTK_EDITABLE(choose_search_entry), 0, -1);
+}
+
/** @brief Create the search widget */
GtkWidget *choose_search_widget(void) {