forked from AuroraMiddleware/gtk
Update the state of the cell view when the state of the button changes (to
2004-10-31 Matthias Clasen <mclasen@redhat.com> * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the state of the cell view when the state of the button changes (to get prelighted drawing right). (#138650, Frances Keenan, Christian Persch)
This commit is contained in:
parent
8dada077be
commit
5675f113c8
@ -1,5 +1,9 @@
|
||||
2004-10-31 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
|
||||
state of the cell view when the state of the button changes (to
|
||||
get prelighted drawing right). (#138650, Frances Keenan, Christian Persch)
|
||||
|
||||
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
|
||||
Don't force the height of the action area, we don't scroll
|
||||
it anyway, and the current way of calculating the height can lead
|
||||
|
@ -1,5 +1,9 @@
|
||||
2004-10-31 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
|
||||
state of the cell view when the state of the button changes (to
|
||||
get prelighted drawing right). (#138650, Frances Keenan, Christian Persch)
|
||||
|
||||
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
|
||||
Don't force the height of the action area, we don't scroll
|
||||
it anyway, and the current way of calculating the height can lead
|
||||
|
@ -1,5 +1,9 @@
|
||||
2004-10-31 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
|
||||
state of the cell view when the state of the button changes (to
|
||||
get prelighted drawing right). (#138650, Frances Keenan, Christian Persch)
|
||||
|
||||
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
|
||||
Don't force the height of the action area, we don't scroll
|
||||
it anyway, and the current way of calculating the height can lead
|
||||
|
@ -1,5 +1,9 @@
|
||||
2004-10-31 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
|
||||
state of the cell view when the state of the button changes (to
|
||||
get prelighted drawing right). (#138650, Frances Keenan, Christian Persch)
|
||||
|
||||
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
|
||||
Don't force the height of the action area, we don't scroll
|
||||
it anyway, and the current way of calculating the height can lead
|
||||
|
@ -225,6 +225,9 @@ static void gtk_combo_box_style_set (GtkWidget *widget,
|
||||
GtkStyle *previous);
|
||||
static void gtk_combo_box_button_toggled (GtkWidget *widget,
|
||||
gpointer data);
|
||||
static void gtk_combo_box_button_state_changed (GtkWidget *widget,
|
||||
GtkStateType previous,
|
||||
gpointer data);
|
||||
static void gtk_combo_box_add (GtkContainer *container,
|
||||
GtkWidget *widget);
|
||||
static void gtk_combo_box_remove (GtkContainer *container,
|
||||
@ -778,6 +781,23 @@ gtk_combo_box_state_changed (GtkWidget *widget,
|
||||
gtk_widget_queue_draw (widget);
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_combo_box_button_state_changed (GtkWidget *widget,
|
||||
GtkStateType previous,
|
||||
gpointer data)
|
||||
{
|
||||
GtkComboBox *combo_box = GTK_COMBO_BOX (data);
|
||||
|
||||
if (GTK_WIDGET_REALIZED (widget))
|
||||
{
|
||||
if (!combo_box->priv->tree_view && combo_box->priv->cell_view)
|
||||
gtk_widget_set_state (combo_box->priv->cell_view,
|
||||
GTK_WIDGET_STATE (widget));
|
||||
}
|
||||
|
||||
gtk_widget_queue_draw (widget);
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_combo_box_check_appearance (GtkComboBox *combo_box)
|
||||
{
|
||||
@ -2301,6 +2321,9 @@ gtk_combo_box_menu_setup (GtkComboBox *combo_box,
|
||||
g_signal_connect (combo_box->priv->button, "button_press_event",
|
||||
G_CALLBACK (gtk_combo_box_menu_button_press),
|
||||
combo_box);
|
||||
g_signal_connect (combo_box->priv->button, "state_changed",
|
||||
G_CALLBACK (gtk_combo_box_button_state_changed),
|
||||
combo_box);
|
||||
|
||||
/* create our funky menu */
|
||||
menu = gtk_menu_new ();
|
||||
@ -2451,6 +2474,10 @@ gtk_combo_box_menu_destroy (GtkComboBox *combo_box)
|
||||
G_SIGNAL_MATCH_DATA,
|
||||
0, 0, NULL,
|
||||
gtk_combo_box_menu_button_press, NULL);
|
||||
g_signal_handlers_disconnect_matched (combo_box->priv->button,
|
||||
G_SIGNAL_MATCH_DATA,
|
||||
0, 0, NULL,
|
||||
gtk_combo_box_button_state_changed, combo_box);
|
||||
|
||||
/* unparent will remove our latest ref */
|
||||
gtk_widget_unparent (combo_box->priv->button);
|
||||
|
Loading…
Reference in New Issue
Block a user