background-content: Don't set up pipeline unless it's needed
There was still a possibility we might return and not paint anything so there's no need to set up the pipeline before that. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1363
This commit is contained in:
parent
a1dd3c43fb
commit
0efecc1dc5
@ -514,13 +514,6 @@ meta_background_content_paint_content (ClutterContent *content,
|
|||||||
actor_pixel_rect.width = actor_box.x2 - actor_box.x1;
|
actor_pixel_rect.width = actor_box.x2 - actor_box.x1;
|
||||||
actor_pixel_rect.height = actor_box.y2 - actor_box.y1;
|
actor_pixel_rect.height = actor_box.y2 - actor_box.y1;
|
||||||
|
|
||||||
setup_pipeline (self, actor, paint_context, &actor_pixel_rect);
|
|
||||||
set_glsl_parameters (self, &actor_pixel_rect);
|
|
||||||
|
|
||||||
/* Limit to how many separate rectangles we'll draw; beyond this just
|
|
||||||
* fall back and draw the whole thing */
|
|
||||||
#define MAX_RECTS 64
|
|
||||||
|
|
||||||
/* Now figure out what to actually paint */
|
/* Now figure out what to actually paint */
|
||||||
if (self->clip_region)
|
if (self->clip_region)
|
||||||
{
|
{
|
||||||
@ -541,6 +534,13 @@ meta_background_content_paint_content (ClutterContent *content,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setup_pipeline (self, actor, paint_context, &actor_pixel_rect);
|
||||||
|
set_glsl_parameters (self, &actor_pixel_rect);
|
||||||
|
|
||||||
|
/* Limit to how many separate rectangles we'll draw; beyond this just
|
||||||
|
* fall back and draw the whole thing */
|
||||||
|
#define MAX_RECTS 64
|
||||||
|
|
||||||
n_rects = cairo_region_num_rectangles (region);
|
n_rects = cairo_region_num_rectangles (region);
|
||||||
if (n_rects <= MAX_RECTS)
|
if (n_rects <= MAX_RECTS)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user