[gtk] gl renderer: Clip nodes: offset
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk] gl renderer: Clip nodes: offset
- Date: Tue, 4 Dec 2018 05:31:46 +0000 (UTC)
commit e1feb1b712a226d6beaf41c1a62f5579348111de
Author: Timm Bäder <mail baedert org>
Date: Mon Dec 3 18:11:09 2018 +0100
gl renderer: Clip nodes: offset
gsk/gl/gskglrenderer.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
---
diff --git a/gsk/gl/gskglrenderer.c b/gsk/gl/gskglrenderer.c
index 753073e97b..f9fba2d12d 100644
--- a/gsk/gl/gskglrenderer.c
+++ b/gsk/gl/gskglrenderer.c
@@ -782,6 +782,8 @@ render_offset_node (GskGLRenderer *self,
case GSK_BORDER_NODE:
case GSK_OUTSET_SHADOW_NODE:
case GSK_LINEAR_GRADIENT_NODE:
+ case GSK_CLIP_NODE:
+ case GSK_ROUNDED_CLIP_NODE:
{
ops_offset (builder, dx, dy);
gsk_gl_renderer_add_render_ops (self, child, builder);
@@ -940,10 +942,6 @@ render_rounded_clip_node (GskGLRenderer *self,
RenderOpBuilder *builder)
{
const float scale = ops_get_scale (builder);
- const float min_x = node->bounds.origin.x;
- const float min_y = node->bounds.origin.y;
- const float max_x = min_x + node->bounds.size.width;
- const float max_y = min_y + node->bounds.size.height;
GskRoundedRect child_clip = *gsk_rounded_clip_node_peek_clip (node);
GskRoundedRect transformed_clip;
GskRoundedRect prev_clip;
@@ -972,6 +970,10 @@ render_rounded_clip_node (GskGLRenderer *self,
else if (graphene_rect_intersection (&builder->current_clip.bounds,
&transformed_clip.bounds, NULL))
{
+ const float min_x = builder->dx + node->bounds.origin.x;
+ const float min_y = builder->dy + node->bounds.origin.y;
+ const float max_x = min_x + node->bounds.size.width;
+ const float max_y = min_y + node->bounds.size.height;
graphene_matrix_t scale_matrix;
gboolean is_offscreen;
int texture_id;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]