summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Rodriguez <ffdragon@soc.pidgin.im>2008-08-30 01:10:22 +0000
committerJustin Rodriguez <ffdragon@soc.pidgin.im>2008-08-30 01:10:22 +0000
commitd9df8b7ee1c7614196fd715d81c091f5880aa68c (patch)
treea14b351d486a651a38890a787ea6c43290543ee0
parentbca297bdad421831d5667d1ef52fa0322dd959b5 (diff)
downloadpidgin-soc.2008.themes.tar.gz
Fixes a bug in the blist theme where a line appears only under the expandersoc.2008.themes
-rw-r--r--pidgin/gtkblist.c3
-rw-r--r--pidgin/gtkcellrendererexpander.c9
2 files changed, 6 insertions, 6 deletions
diff --git a/pidgin/gtkblist.c b/pidgin/gtkblist.c
index e79cdd430c..aca4ea7161 100644
--- a/pidgin/gtkblist.c
+++ b/pidgin/gtkblist.c
@@ -6023,9 +6023,6 @@ static void pidgin_blist_update_group(PurpleBuddyList *list,
bgcolor = pidgin_blist_theme_get_collapsed_background_color(theme);
else bgcolor = pidgin_blist_theme_get_expanded_background_color(theme);
- if (bgcolor == NULL)
- bgcolor = &(gtkblist->treeview->style->bg[GTK_STATE_ACTIVE]);
-
path = gtk_tree_model_get_path(GTK_TREE_MODEL(gtkblist->treemodel), &iter);
expanded = gtk_tree_view_row_expanded(GTK_TREE_VIEW(gtkblist->treeview), path);
gtk_tree_path_free(path);
diff --git a/pidgin/gtkcellrendererexpander.c b/pidgin/gtkcellrendererexpander.c
index 289e34143d..7f9cb58aee 100644
--- a/pidgin/gtkcellrendererexpander.c
+++ b/pidgin/gtkcellrendererexpander.c
@@ -228,7 +228,7 @@ static void pidgin_cell_renderer_expander_get_size (GtkCellRenderer *cell,
}
-static void pidgin_cell_renderer_expander_render (GtkCellRenderer *cell,
+static void pidgin_cell_renderer_expander_render(GtkCellRenderer *cell,
GdkWindow *window,
GtkWidget *widget,
GdkRectangle *background_area,
@@ -237,7 +237,7 @@ static void pidgin_cell_renderer_expander_render (GtkCellRenderer *cell,
guint flags)
{
PidginCellRendererExpander *cellexpander = (PidginCellRendererExpander *) cell;
-
+ gboolean set;
gint width, height;
GtkStateType state;
@@ -270,7 +270,10 @@ static void pidgin_cell_renderer_expander_render (GtkCellRenderer *cell,
cell_area->x + cell->xpad + (width / 2),
cell_area->y + cell->ypad + (height / 2),
cell->is_expanded ? GTK_EXPANDER_EXPANDED : GTK_EXPANDER_COLLAPSED);
- if (cell->is_expanded)
+
+ /* only draw the line if the color isn't set - this prevents a bug where the hline appears only under the expander */
+ g_object_get(cellexpander, "cell-background-set", &set, NULL);
+ if (cell->is_expanded && !set)
gtk_paint_hline (widget->style, window, state, NULL, widget, NULL, 0,
widget->allocation.width, cell_area->y + cell_area->height);
}