summaryrefslogtreecommitdiff
path: root/gtk/gtkcombobox.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2018-08-05 04:30:15 +0200
committerMatthias Clasen <mclasen@redhat.com>2020-03-25 22:36:03 -0400
commit8ff18b3d391f178498222a02a116c4315b2431a8 (patch)
tree71b30e263aa88d426bd80248c740bab58ba40270 /gtk/gtkcombobox.c
parent81fa63260e0c25343a8dd2fee5ba32b5d4a46516 (diff)
downloadgtk+-8ff18b3d391f178498222a02a116c4315b2431a8.tar.gz
combobox: Port bindings to use shortcuts
Diffstat (limited to 'gtk/gtkcombobox.c')
-rw-r--r--gtk/gtkcombobox.c123
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,