diff options
-rw-r--r-- | widgets/misc/ChangeLog | 4 | ||||
-rw-r--r-- | widgets/misc/e-combo-button.c | 20 |
2 files changed, 17 insertions, 7 deletions
diff --git a/widgets/misc/ChangeLog b/widgets/misc/ChangeLog index 114ce73c8f..3655f14352 100644 --- a/widgets/misc/ChangeLog +++ b/widgets/misc/ChangeLog @@ -1,3 +1,7 @@ +2006-06-19 Chpe <chpe@gnome.org> + + * e-combo-button.c: (paint): Fix for bug #262210 + 2006-06-09 Johnny Jacob <johnnyjacob@gmail.com> * e-dateedit.c (): Removing aggressive time check when entering a diff --git a/widgets/misc/e-combo-button.c b/widgets/misc/e-combo-button.c index e116644e49..53dded883a 100644 --- a/widgets/misc/e-combo-button.c +++ b/widgets/misc/e-combo-button.c @@ -94,6 +94,7 @@ paint (EComboButton *combo_button, { EComboButtonPrivate *priv = combo_button->priv; GtkWidget *widget = GTK_WIDGET (combo_button); + GtkButton *button = GTK_BUTTON (combo_button); GtkShadowType shadow_type; gboolean interior_focus; int separator_x; @@ -142,17 +143,22 @@ paint (EComboButton *combo_button, height -= 2 * (focus_width + focus_pad); } - gtk_paint_box (widget->style, widget->window, - GTK_WIDGET_STATE (widget), shadow_type, - area, widget, "button", - x, y, separator_x, height); + if (button->relief != GTK_RELIEF_NONE || button->depressed || + priv->menu_popped_up || + GTK_WIDGET_STATE (widget) == GTK_STATE_PRELIGHT) { - if (width - separator_x > 0) gtk_paint_box (widget->style, widget->window, GTK_WIDGET_STATE (widget), shadow_type, area, widget, "button", - separator_x, y, width - separator_x, height); - + x, y, separator_x, height); + + if (width - separator_x > 0) + gtk_paint_box (widget->style, widget->window, + GTK_WIDGET_STATE (widget), shadow_type, + area, widget, "button", + separator_x, y, width - separator_x, height); + } + if (GTK_WIDGET_HAS_FOCUS (widget)) { if (interior_focus) { x += widget->style->xthickness + focus_pad; |