icon-browser: Stop using ::key-press-event
This commit is contained in:
committed by
Carlos Garnacho
parent
6d1b21a028
commit
21d1ab42d1
@@ -54,6 +54,7 @@ struct _IconBrowserWindow
|
|||||||
GtkWidget *image6;
|
GtkWidget *image6;
|
||||||
GtkWidget *label6;
|
GtkWidget *label6;
|
||||||
GtkWidget *description;
|
GtkWidget *description;
|
||||||
|
GtkEventController *controller;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _IconBrowserWindowClass
|
struct _IconBrowserWindowClass
|
||||||
@@ -286,13 +287,16 @@ populate (IconBrowserWindow *win)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
key_press_event_cb (GtkWidget *widget,
|
key_event_cb (GtkEventController *controller,
|
||||||
GdkEvent *event,
|
guint keyval,
|
||||||
gpointer data)
|
guint keycode,
|
||||||
|
GdkModifierType state,
|
||||||
|
gpointer data)
|
||||||
{
|
{
|
||||||
IconBrowserWindow *win = data;
|
IconBrowserWindow *win = data;
|
||||||
|
|
||||||
return gtk_search_bar_handle_event (GTK_SEARCH_BAR (win->searchbar), event);
|
return gtk_search_bar_handle_event (GTK_SEARCH_BAR (win->searchbar),
|
||||||
|
gtk_get_current_event ());
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -480,12 +484,31 @@ icon_browser_window_init (IconBrowserWindow *win)
|
|||||||
|
|
||||||
symbolic_toggled (GTK_TOGGLE_BUTTON (win->symbolic_radio), win);
|
symbolic_toggled (GTK_TOGGLE_BUTTON (win->symbolic_radio), win);
|
||||||
|
|
||||||
|
win->controller = gtk_event_controller_key_new (GTK_WIDGET (win));
|
||||||
|
g_signal_connect (win->controller, "key-pressed", G_CALLBACK (key_event_cb), win);
|
||||||
|
|
||||||
populate (win);
|
populate (win);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
icon_browser_window_finalize (GObject *object)
|
||||||
|
{
|
||||||
|
IconBrowserWindow *win = ICON_BROWSER_WINDOW (object);
|
||||||
|
|
||||||
|
g_hash_table_unref (win->contexts);
|
||||||
|
|
||||||
|
g_object_unref (win->controller);
|
||||||
|
|
||||||
|
G_OBJECT_CLASS (icon_browser_window_parent_class)->finalize (object);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
icon_browser_window_class_init (IconBrowserWindowClass *class)
|
icon_browser_window_class_init (IconBrowserWindowClass *class)
|
||||||
{
|
{
|
||||||
|
GObjectClass *object_class = G_OBJECT_CLASS (class);
|
||||||
|
|
||||||
|
object_class->finalize = icon_browser_window_finalize;
|
||||||
|
|
||||||
g_type_ensure (ICON_STORE_TYPE);
|
g_type_ensure (ICON_STORE_TYPE);
|
||||||
|
|
||||||
gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (class),
|
gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (class),
|
||||||
@@ -516,7 +539,6 @@ icon_browser_window_class_init (IconBrowserWindowClass *class)
|
|||||||
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), item_activated);
|
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), item_activated);
|
||||||
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), selected_context_changed);
|
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), selected_context_changed);
|
||||||
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), symbolic_toggled);
|
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), symbolic_toggled);
|
||||||
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), key_press_event_cb);
|
|
||||||
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), copy_to_clipboard);
|
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), copy_to_clipboard);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
<property name="title" translatable="yes">Icon Browser</property>
|
<property name="title" translatable="yes">Icon Browser</property>
|
||||||
<property name="default-width">1024</property>
|
<property name="default-width">1024</property>
|
||||||
<property name="default-height">768</property>
|
<property name="default-height">768</property>
|
||||||
<signal name="key-press-event" handler="key_press_event_cb"/>
|
|
||||||
<child type="titlebar">
|
<child type="titlebar">
|
||||||
<object class="GtkHeaderBar" id="header">
|
<object class="GtkHeaderBar" id="header">
|
||||||
<property name="title" translatable="yes">Icon Browser</property>
|
<property name="title" translatable="yes">Icon Browser</property>
|
||||||
|
|||||||
Reference in New Issue
Block a user