summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <maclas@gmx.de>2004-05-09 06:01:57 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2004-05-09 06:01:57 +0000
commitb971146da7a3becc72434e8a98615a3d8fb7ef68 (patch)
treeb248d629c64c4c30a0e7e4c169d85c44129dfea7
parentb15a6fc689c0ba53c5cecb68439a5b27c11240dc (diff)
downloadgtk+-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--ChangeLog8
-rw-r--r--ChangeLog.pre-2-108
-rw-r--r--ChangeLog.pre-2-68
-rw-r--r--ChangeLog.pre-2-88
-rw-r--r--gtk/gtkcombobox.c21
5 files changed, 51 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 934994bba4..dfaa609df9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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),
&GTK_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;