diff options
author | Benjamin Otte <otte@redhat.com> | 2018-08-05 04:30:15 +0200 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2020-03-25 22:36:03 -0400 |
commit | 8ff18b3d391f178498222a02a116c4315b2431a8 (patch) | |
tree | 71b30e263aa88d426bd80248c740bab58ba40270 /gtk/gtkcombobox.c | |
parent | 81fa63260e0c25343a8dd2fee5ba32b5d4a46516 (diff) | |
download | gtk+-8ff18b3d391f178498222a02a116c4315b2431a8.tar.gz |
combobox: Port bindings to use shortcuts
Diffstat (limited to 'gtk/gtkcombobox.c')
-rw-r--r-- | gtk/gtkcombobox.c | 123 |
1 files changed, 71 insertions, 52 deletions
diff --git a/gtk/gtkcombobox.c b/gtk/gtkcombobox.c index 5e5bdd1c39..04d135d7ff 100644 --- a/gtk/gtkcombobox.c +++ b/gtk/gtkcombobox.c @@ -409,7 +409,6 @@ gtk_combo_box_class_init (GtkComboBoxClass *klass) GObjectClass *object_class; GtkContainerClass *container_class; GtkWidgetClass *widget_class; - GtkBindingSet *binding_set; container_class = (GtkContainerClass *)klass; container_class->forall = gtk_combo_box_forall; @@ -560,57 +559,77 @@ gtk_combo_box_class_init (GtkComboBoxClass *klass) G_TYPE_STRING, 1, G_TYPE_STRING); /* key bindings */ - binding_set = gtk_binding_set_by_class (widget_class); - - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Down, GDK_MOD1_MASK, - "popup", 0); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Down, GDK_MOD1_MASK, - "popup", 0); - - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Up, GDK_MOD1_MASK, - "popdown", 0); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Up, GDK_MOD1_MASK, - "popdown", 0); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Escape, 0, - "popdown", 0); - - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Up, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_STEP_UP); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Up, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_STEP_UP); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Page_Up, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_PAGE_UP); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Page_Up, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_PAGE_UP); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Home, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_START); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Home, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_START); - - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Down, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_STEP_DOWN); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Down, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_STEP_DOWN); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_Page_Down, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_PAGE_DOWN); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_Page_Down, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_PAGE_DOWN); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_End, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_END); - gtk_binding_entry_add_signal (binding_set, GDK_KEY_KP_End, 0, - "move-active", 1, - GTK_TYPE_SCROLL_TYPE, GTK_SCROLL_END); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Down, GDK_MOD1_MASK, + "popup", + NULL); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Down, GDK_MOD1_MASK, + "popup", + NULL); + + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Up, GDK_MOD1_MASK, + "popdown", + NULL); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Up, GDK_MOD1_MASK, + "popdown", + NULL); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Escape, 0, + "popdown", + NULL); + + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Up, 0, + "move-active", + "(i)", GTK_SCROLL_STEP_UP); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Up, 0, + "move-active", + "(i)", GTK_SCROLL_STEP_UP); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Page_Up, 0, + "move-active", + "(i)", GTK_SCROLL_PAGE_UP); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Page_Up, 0, + "move-active", + "(i)", GTK_SCROLL_PAGE_UP); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Home, 0, + "move-active", + "(i)", GTK_SCROLL_START); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Home, 0, + "move-active", + "(i)", GTK_SCROLL_START); + + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Down, 0, + "move-active", + "(i)", GTK_SCROLL_STEP_DOWN); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Down, 0, + "move-active", + "(i)", GTK_SCROLL_STEP_DOWN); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_Page_Down, 0, + "move-active", + "(i)", GTK_SCROLL_PAGE_DOWN); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_Page_Down, 0, + "move-active", + "(i)", GTK_SCROLL_PAGE_DOWN); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_End, 0, + "move-active", + "(i)", GTK_SCROLL_END); + gtk_widget_class_add_binding_signal (widget_class, + GDK_KEY_KP_End, 0, + "move-active", + "(i)", GTK_SCROLL_END); /* properties */ g_object_class_override_property (object_class, |