Handy.SearchBar.handle_event

### Method

# Handy SearchBarhandle_event

#### Declaration [src]

    gboolean
    hdy_search_bar_handle_event (
      HdySearchBar* self,
      GdkEvent* event
    )

#### Description [src]

Handles key press events.

This function should be called when the top-level window which contains the search bar received a key event.

If the key event is handled by the search bar, the bar will be shown, the entry populated with the entered text and `GDK_EVENT_STOP` will be returned. The caller should ensure that events are not propagated further.

If no entry has been connected to the search bar, using `hdy_search_bar_connect_entry()`, this function will return immediately with a warning.

## Showing the search bar on key presses

    static gboolean
    on_key_press_event (GtkWidget *widget,
                        GdkEvent  *event,
                        gpointer   user_data)
    {
      HdySearchBar *bar = HDY_SEARCH_BAR (user_data);
      return hdy_search_bar_handle_event (self, event);
    }

    static void
    create_toplevel (void)
    {
      GtkWidget *window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
      GtkWindow *search_bar = hdy_search_bar_new ();

      // Add more widgets to the window...

      g_signal_connect (window,
                       "key-press-event",
                        G_CALLBACK (on_key_press_event),
                        search_bar);
    }

Available since: | 1.0

#### Parameters

`event` | `GdkEvent`
| A `GdkEvent` containing key press events.
| The data is owned by the caller of the function.

#### Return value

Returns: | `gboolean`
| `GDK_EVENT_STOP` if the key press event resulted in text being entered in the search entry (and revealing the search bar if necessary), `GDK_EVENT_PROPAGATE` otherwise.