[mutter] clutter/stage-cogl: Stop painting redraw clip outline
- From: Jonas Ådahl <jadahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] clutter/stage-cogl: Stop painting redraw clip outline
- Date: Wed, 13 May 2020 11:36:44 +0000 (UTC)
commit afe4cd482e84b8dd2d35610c1d3aae9fdf481102
Author: Jonas Dreßler <verdre v0yd nl>
Date: Fri Mar 6 12:09:29 2020 +0100
clutter/stage-cogl: Stop painting redraw clip outline
We already have a better way to paint the redraw clip: Painting the
damage region paints the individual rects of the clip region and not
only the bounding rect.
So stop painting an outline around the redraw clip bounding rect when
CLUTTER_DEBUG_REDRAWS is set.
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1113
clutter/clutter/cogl/clutter-stage-cogl.c | 45 -------------------------------
1 file changed, 45 deletions(-)
---
diff --git a/clutter/clutter/cogl/clutter-stage-cogl.c b/clutter/clutter/cogl/clutter-stage-cogl.c
index 9321aeb33..fdae815e2 100644
--- a/clutter/clutter/cogl/clutter-stage-cogl.c
+++ b/clutter/clutter/cogl/clutter-stage-cogl.c
@@ -581,19 +581,15 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
gboolean has_buffer_age;
gboolean do_swap_buffer;
gboolean swap_with_damage;
- ClutterActor *wrapper;
cairo_region_t *redraw_clip;
cairo_region_t *queued_redraw_clip = NULL;
cairo_region_t *fb_clip_region;
cairo_region_t *swap_region;
- cairo_rectangle_int_t redraw_rect;
gboolean clip_region_empty;
float fb_scale;
int fb_width, fb_height;
int buffer_age;
- wrapper = CLUTTER_ACTOR (stage_cogl->wrapper);
-
clutter_stage_view_get_layout (view, &view_rect);
fb_scale = clutter_stage_view_get_scale (view);
fb_width = cogl_framebuffer_get_width (fb);
@@ -738,47 +734,6 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
paint_stage (stage_cogl, view, redraw_clip);
}
- cairo_region_get_extents (redraw_clip, &redraw_rect);
-
- if (may_use_clipped_redraw &&
- G_UNLIKELY ((clutter_paint_debug_flags & CLUTTER_DEBUG_REDRAWS)))
- {
- CoglContext *ctx = cogl_framebuffer_get_context (fb);
- static CoglPipeline *outline = NULL;
- ClutterActor *actor = CLUTTER_ACTOR (wrapper);
- float x_1 = redraw_rect.x;
- float x_2 = redraw_rect.x + redraw_rect.width;
- float y_1 = redraw_rect.y;
- float y_2 = redraw_rect.y + redraw_rect.height;
- CoglVertexP2 quad[4] = {
- { x_1, y_1 },
- { x_2, y_1 },
- { x_2, y_2 },
- { x_1, y_2 }
- };
- CoglPrimitive *prim;
- CoglMatrix modelview;
-
- if (outline == NULL)
- {
- outline = cogl_pipeline_new (ctx);
- cogl_pipeline_set_color4ub (outline, 0xff, 0x00, 0x00, 0xff);
- }
-
- prim = cogl_primitive_new_p2 (ctx,
- COGL_VERTICES_MODE_LINE_LOOP,
- 4, /* n_vertices */
- quad);
-
- cogl_framebuffer_push_matrix (fb);
- cogl_matrix_init_identity (&modelview);
- _clutter_actor_apply_modelview_transform (actor, &modelview);
- cogl_framebuffer_set_modelview_matrix (fb, &modelview);
- cogl_framebuffer_draw_primitive (fb, outline, prim);
- cogl_framebuffer_pop_matrix (fb);
- cogl_object_unref (prim);
- }
-
/* XXX: It seems there will be a race here in that the stage
* window may be resized before the cogl_onscreen_swap_region
* is handled and so we may copy the wrong region. I can't
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]