compositor: use weston_view_is_opaque() to check for opacity in debug_scene_view_print()

Currently the debug output for 'drm-backend' can be confusing. In the output of
debug_scene_view_print() views may be listed as 'not opaque' but later, during
plane assignment, other views underneath such a view is reported as 'occluded on
our output'.
This happens because weston_view_is_opaque() has some extra checks to determine
if a view is fully opaque, such as 'is_opaque' provided by the renderer for
formats that have no alpha channel.

Use weston_view_is_opaque() in debug_scene_view_print() as well to get more
accurate results.

Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
dev
Michael Olbrich 4 years ago
parent 3ac911f69b
commit b7e5f10bf4
  1. 3
      libweston/compositor.c

@ -7145,8 +7145,7 @@ debug_scene_view_print(FILE *fp, struct weston_view *view, int view_idx)
box->x1, box->y1, box->x2, box->y2);
box = pixman_region32_extents(&view->transform.opaque);
if (pixman_region32_equal(&view->transform.opaque,
&view->transform.boundingbox)) {
if (weston_view_is_opaque(view, &view->transform.boundingbox)) {
fprintf(fp, "\t\t[fully opaque]\n");
} else if (!pixman_region32_not_empty(&view->transform.opaque)) {
fprintf(fp, "\t\t[not opaque]\n");

Loading…
Cancel
Save