mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-10 10:50:10 +00:00
fixed: draw css background and borders
https://bugzilla.gnome.org/show_bug.cgi?id=711324
This commit is contained in:
parent
3c28297134
commit
ba6128f8af
@ -99,6 +99,8 @@ static void gtk_fixed_get_preferred_height (GtkWidget *widget,
|
||||
gint *natural);
|
||||
static void gtk_fixed_size_allocate (GtkWidget *widget,
|
||||
GtkAllocation *allocation);
|
||||
static gboolean gtk_fixed_draw (GtkWidget *widget,
|
||||
cairo_t *cr);
|
||||
static void gtk_fixed_add (GtkContainer *container,
|
||||
GtkWidget *widget);
|
||||
static void gtk_fixed_remove (GtkContainer *container,
|
||||
@ -135,6 +137,7 @@ gtk_fixed_class_init (GtkFixedClass *class)
|
||||
widget_class->get_preferred_width = gtk_fixed_get_preferred_width;
|
||||
widget_class->get_preferred_height = gtk_fixed_get_preferred_height;
|
||||
widget_class->size_allocate = gtk_fixed_size_allocate;
|
||||
widget_class->draw = gtk_fixed_draw;
|
||||
|
||||
container_class->add = gtk_fixed_add;
|
||||
container_class->remove = gtk_fixed_remove;
|
||||
@ -486,6 +489,22 @@ gtk_fixed_size_allocate (GtkWidget *widget,
|
||||
}
|
||||
}
|
||||
|
||||
static gboolean
|
||||
gtk_fixed_draw (GtkWidget *widget,
|
||||
cairo_t *cr)
|
||||
{
|
||||
GtkStyleContext *context;
|
||||
GtkAllocation alloc;
|
||||
|
||||
context = gtk_widget_get_style_context (widget);
|
||||
gtk_widget_get_allocation (widget, &alloc);
|
||||
|
||||
gtk_render_background (context, cr, 0, 0, alloc.width, alloc.height);
|
||||
gtk_render_frame (context, cr, 0, 0, alloc.width, alloc.height);
|
||||
|
||||
return GTK_WIDGET_CLASS (gtk_fixed_parent_class)->draw (widget, cr);
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_fixed_add (GtkContainer *container,
|
||||
GtkWidget *widget)
|
||||
|
Loading…
Reference in New Issue
Block a user