summaryrefslogtreecommitdiff
path: root/libslab/app-resizer.c
diff options
context:
space:
mode:
Diffstat (limited to 'libslab/app-resizer.c')
-rw-r--r--libslab/app-resizer.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/libslab/app-resizer.c b/libslab/app-resizer.c
index f7d9d0a1..0e1a15b8 100644
--- a/libslab/app-resizer.c
+++ b/libslab/app-resizer.c
@@ -275,11 +275,19 @@ static gboolean
app_resizer_paint_window (GtkWidget * widget, cairo_t * cr, AppShellData * app_data)
{
cairo_save(cr);
+ GtkStyleContext *context;
+ GdkRGBA *bg_rgba = NULL;
GtkAllocation widget_allocation;
gtk_widget_get_allocation (widget, &widget_allocation);
- gdk_cairo_set_source_color (cr, gtk_widget_get_style (widget)->base);
+ context = gtk_widget_get_style_context (widget);
+ gtk_style_context_get (context,
+ GTK_STATE_FLAG_NORMAL,
+ "background-color", &bg_rgba,
+ NULL);
+
+ gdk_cairo_set_source_rgba (cr, bg_rgba);
cairo_set_line_width(cr, 1);
cairo_rectangle(cr, widget_allocation.x, widget_allocation.y, widget_allocation.width, widget_allocation.height);
@@ -289,19 +297,25 @@ app_resizer_paint_window (GtkWidget * widget, cairo_t * cr, AppShellData * app_d
if (app_data->selected_group)
{
GtkWidget *selected_widget = GTK_WIDGET (app_data->selected_group);
+ GdkRGBA *rgba;
GtkAllocation selected_widget_allocation;
-
gtk_widget_get_allocation (selected_widget, &selected_widget_allocation);
- gdk_cairo_set_source_color (cr, gtk_widget_get_style (selected_widget)->light);
- cairo_set_line_width(cr, 1);
+ gtk_style_context_get (context,
+ GTK_STATE_FLAG_PRELIGHT,
+ "background-color", &rgba,
+ NULL);
+ gdk_cairo_set_source_rgba (cr, rgba);
+ cairo_set_line_width(cr, 1);
cairo_rectangle(cr, selected_widget_allocation.x, selected_widget_allocation.y, selected_widget_allocation.width, selected_widget_allocation.height);
cairo_stroke_preserve(cr);
cairo_fill(cr);
+ gdk_rgba_free (rgba);
}
cairo_restore(cr);
+ gdk_rgba_free (bg_rgba);
return FALSE;
}