[gnome-builder] editor: activate symbol row and hide popover on Return
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] editor: activate symbol row and hide popover on Return
- Date: Tue, 14 Apr 2015 02:48:22 +0000 (UTC)
commit 1dee822d34dd670fc18d0825e7a795a0b0926436
Author: Christian Hergert <christian hergert me>
Date: Mon Apr 13 19:48:11 2015 -0700
editor: activate symbol row and hide popover on Return
src/editor/gb-editor-view-private.h | 1 +
src/editor/gb-editor-view.c | 29 +++++++++++++++++++++++++++++
2 files changed, 30 insertions(+), 0 deletions(-)
---
diff --git a/src/editor/gb-editor-view-private.h b/src/editor/gb-editor-view-private.h
index 60d9bd4..ec0621b 100644
--- a/src/editor/gb-editor-view-private.h
+++ b/src/editor/gb-editor-view-private.h
@@ -44,6 +44,7 @@ struct _GbEditorView
GtkProgressBar *progress_bar;
GtkMenuButton *symbols_button;
GtkListBox *symbols_listbox;
+ GtkPopover *symbols_popover;
GtkSearchEntry *symbols_search_entry;
GtkMenuButton *tweak_button;
GbEditorTweakWidget *tweak_widget;
diff --git a/src/editor/gb-editor-view.c b/src/editor/gb-editor-view.c
index 730942a..a25210f 100644
--- a/src/editor/gb-editor-view.c
+++ b/src/editor/gb-editor-view.c
@@ -544,6 +544,28 @@ gb_editor_view__symbol_row_activated_cb (GbEditorView *self,
gb_editor_view_navigate_to (GB_VIEW (self), location);
}
+static void
+gb_editor_view__symbol_entry_activate_cb (GbEditorView *self,
+ GtkEntry *entry)
+{
+ GtkListBoxRow *row;
+
+ g_assert (GB_IS_EDITOR_VIEW (self));
+ g_assert (GTK_IS_ENTRY (entry));
+
+ /*
+ * FIXME:
+ *
+ * Use row_at_y() with 1, since getting from 0 does not work.
+ */
+ row = gtk_list_box_get_row_at_y (self->symbols_listbox, 1);
+ if (row != NULL)
+ {
+ g_signal_emit_by_name (row, "activate");
+ gtk_widget_hide (GTK_WIDGET (self->symbols_popover));
+ }
+}
+
static gboolean
gb_editor_view_symbol_filter_func (GtkListBoxRow *row,
gpointer user_data)
@@ -677,6 +699,7 @@ gb_editor_view_class_init (GbEditorViewClass *klass)
GB_WIDGET_CLASS_BIND (klass, GbEditorView, progress_bar);
GB_WIDGET_CLASS_BIND (klass, GbEditorView, symbols_button);
GB_WIDGET_CLASS_BIND (klass, GbEditorView, symbols_listbox);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorView, symbols_popover);
GB_WIDGET_CLASS_BIND (klass, GbEditorView, symbols_search_entry);
GB_WIDGET_CLASS_BIND (klass, GbEditorView, tweak_button);
GB_WIDGET_CLASS_BIND (klass, GbEditorView, tweak_widget);
@@ -707,6 +730,12 @@ gb_editor_view_init (GbEditorView *self)
G_CONNECT_SWAPPED);
g_signal_connect_object (self->symbols_search_entry,
+ "activate",
+ G_CALLBACK (gb_editor_view__symbol_entry_activate_cb),
+ self,
+ G_CONNECT_SWAPPED);
+
+ g_signal_connect_object (self->symbols_search_entry,
"changed",
G_CALLBACK (gb_editor_view_invalidate_symbol_filter),
self,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]