diff options
author | Matthias Clasen <maclas@gmx.de> | 2004-05-09 06:01:57 +0000 |
---|---|---|
committer | Matthias Clasen <matthiasc@src.gnome.org> | 2004-05-09 06:01:57 +0000 |
commit | b971146da7a3becc72434e8a98615a3d8fb7ef68 (patch) | |
tree | b248d629c64c4c30a0e7e4c169d85c44129dfea7 | |
parent | b15a6fc689c0ba53c5cecb68439a5b27c11240dc (diff) | |
download | gtk+-b971146da7a3becc72434e8a98615a3d8fb7ef68.tar.gz |
In list mode, accept the same mouse/wheel bindings on the cellview as on
Sun May 9 01:57:17 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_list_button_released):
In list mode, accept the same mouse/wheel bindings on
the cellview as on the button. (#136967)
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 8 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 8 | ||||
-rw-r--r-- | gtk/gtkcombobox.c | 21 |
5 files changed, 51 insertions, 2 deletions
@@ -1,3 +1,11 @@ +Sun May 9 02:01:13 2004 Matthias Clasen <maclas@gmx.de> + + Merge from 2.4: + + * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): + In list mode, accept the same mouse/wheel bindings on + the cellview as on the button. (#136967) + Sun May 9 01:25:37 2004 Matthias Clasen <maclas@gmx.de> * gtk/gtkiconfactory.c (add_to_cache): Actually count the diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 934994bba4..dfaa609df9 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,11 @@ +Sun May 9 02:01:13 2004 Matthias Clasen <maclas@gmx.de> + + Merge from 2.4: + + * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): + In list mode, accept the same mouse/wheel bindings on + the cellview as on the button. (#136967) + Sun May 9 01:25:37 2004 Matthias Clasen <maclas@gmx.de> * gtk/gtkiconfactory.c (add_to_cache): Actually count the diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 934994bba4..dfaa609df9 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,11 @@ +Sun May 9 02:01:13 2004 Matthias Clasen <maclas@gmx.de> + + Merge from 2.4: + + * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): + In list mode, accept the same mouse/wheel bindings on + the cellview as on the button. (#136967) + Sun May 9 01:25:37 2004 Matthias Clasen <maclas@gmx.de> * gtk/gtkiconfactory.c (add_to_cache): Actually count the diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 934994bba4..dfaa609df9 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,11 @@ +Sun May 9 02:01:13 2004 Matthias Clasen <maclas@gmx.de> + + Merge from 2.4: + + * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): + In list mode, accept the same mouse/wheel bindings on + the cellview as on the button. (#136967) + Sun May 9 01:25:37 2004 Matthias Clasen <maclas@gmx.de> * gtk/gtkiconfactory.c (add_to_cache): Actually count the diff --git a/gtk/gtkcombobox.c b/gtk/gtkcombobox.c index 5e02eb2df0..a3d284682c 100644 --- a/gtk/gtkcombobox.c +++ b/gtk/gtkcombobox.c @@ -2147,7 +2147,18 @@ gtk_combo_box_list_setup (GtkComboBox *combo_box) gtk_cell_view_set_background_color (GTK_CELL_VIEW (combo_box->priv->cell_view), >K_WIDGET (combo_box)->style->base[GTK_WIDGET_STATE (combo_box)]); - gtk_widget_show (combo_box->priv->cell_view_frame); + combo_box->priv->box = gtk_event_box_new (); + gtk_event_box_set_visible_window (GTK_EVENT_BOX (combo_box->priv->box), + FALSE); + + gtk_container_add (GTK_CONTAINER (combo_box->priv->cell_view_frame), + combo_box->priv->box); + + gtk_widget_show_all (combo_box->priv->cell_view_frame); + + g_signal_connect (combo_box->priv->box, "button_press_event", + G_CALLBACK (gtk_combo_box_list_button_pressed), + combo_box); } combo_box->priv->tree_view = gtk_tree_view_new (); @@ -2226,6 +2237,11 @@ gtk_combo_box_list_destroy (GtkComboBox *combo_box) 0, 0, NULL, gtk_combo_box_list_button_pressed, NULL); + g_signal_handlers_disconnect_matched (combo_box->priv->box, + G_SIGNAL_MATCH_DATA, + 0, 0, NULL, + gtk_combo_box_list_button_pressed, + NULL); /* destroy things (unparent will kill the latest ref from us) * last unref on button will destroy the arrow @@ -2245,6 +2261,7 @@ gtk_combo_box_list_destroy (GtkComboBox *combo_box) { gtk_widget_unparent (combo_box->priv->cell_view_frame); combo_box->priv->cell_view_frame = NULL; + combo_box->priv->box = NULL; } gtk_widget_destroy (combo_box->priv->tree_view); @@ -2280,7 +2297,7 @@ gtk_combo_box_list_button_pressed (GtkWidget *widget, if (ewidget == combo_box->priv->tree_view) return TRUE; - if ((ewidget != combo_box->priv->button) || + if ((ewidget != combo_box->priv->button && ewidget != combo_box->priv->box) || gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (combo_box->priv->button))) return FALSE; |