forked from AuroraMiddleware/gtk
widget: Create render node with correct bounds
We want a render node where (0,0) is the top left of the widget. However, we need to account for the clip origin not matching the allocation origin.
This commit is contained in:
parent
8854279e2a
commit
e96c485afa
@ -15624,12 +15624,15 @@ gtk_widget_create_render_node (GtkWidget *widget,
|
||||
const char *name)
|
||||
{
|
||||
GskRenderNode *res = gsk_renderer_create_render_node (renderer);
|
||||
GtkAllocation clip;
|
||||
GtkAllocation clip, allocation;
|
||||
graphene_rect_t bounds;
|
||||
|
||||
gtk_widget_get_clip (widget, &clip);
|
||||
gtk_widget_get_allocation (widget, &allocation);
|
||||
|
||||
graphene_rect_init (&bounds, 0, 0, clip.width, clip.height);
|
||||
graphene_rect_init (&bounds,
|
||||
allocation.x - clip.x, allocation.y - clip.y,
|
||||
clip.width, clip.height);
|
||||
|
||||
gsk_render_node_set_name (res, name);
|
||||
gsk_render_node_set_bounds (res, &bounds);
|
||||
|
Loading…
Reference in New Issue
Block a user