[recipes] window: Add a button press handler
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [recipes] window: Add a button press handler
- Date: Sat, 4 Feb 2017 05:10:32 +0000 (UTC)
commit b28c1dc3504a251567e659f1823529c087c578f4
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Jan 23 18:39:13 2017 +0300
window: Add a button press handler
This send button presses to the cooking view.
src/gr-window.c | 17 +++++++++++++++++
src/gr-window.ui | 1 +
2 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/src/gr-window.c b/src/gr-window.c
index 5c5b18d..2ecc70a 100644
--- a/src/gr-window.c
+++ b/src/gr-window.c
@@ -334,6 +334,22 @@ window_keypress_handler (GtkWidget *widget,
return gr_query_editor_handle_event (GR_QUERY_EDITOR (window->search_bar), event);
}
+static gboolean
+window_buttonpress_handler (GtkWidget *widget,
+ GdkEvent *event,
+ gpointer data)
+{
+ GrWindow *window = GR_WINDOW (widget);
+ const char *visible;
+
+ visible = gtk_stack_get_visible_child_name (GTK_STACK (window->main_stack));
+
+ if (strcmp (visible, "cooking") == 0)
+ return gr_cooking_page_handle_event (GR_COOKING_PAGE (window->cooking_page), event);
+
+ return GDK_EVENT_PROPAGATE;
+}
+
static void
window_mapped_handler (GtkWidget *widget)
{
@@ -527,6 +543,7 @@ gr_window_class_init (GrWindowClass *klass)
gtk_widget_class_bind_template_callback (widget_class, stop_search);
gtk_widget_class_bind_template_callback (widget_class, search_mode_changed);
gtk_widget_class_bind_template_callback (widget_class, window_keypress_handler);
+ gtk_widget_class_bind_template_callback (widget_class, window_buttonpress_handler);
gtk_widget_class_bind_template_callback (widget_class, window_mapped_handler);
gtk_widget_class_bind_template_callback (widget_class, do_undo);
gtk_widget_class_bind_template_callback (widget_class, close_undo);
diff --git a/src/gr-window.ui b/src/gr-window.ui
index 43d4dfd..e69f7e5 100644
--- a/src/gr-window.ui
+++ b/src/gr-window.ui
@@ -4,6 +4,7 @@
<template class="GrWindow" parent="GtkApplicationWindow">
<property name="resizable">1</property>
<signal name="key-press-event" handler="window_keypress_handler" after="yes"/>
+ <signal name="button-press-event" handler="window_buttonpress_handler" after="yes"/>
<signal name="map" handler="window_mapped_handler" after="yes"/>
<child type="titlebar">
<object class="GtkHeaderBar" id="header">
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]