Lines Matching refs:surface
4 Subject: [PATCH 11/79] HACK: gl-renderer: Support making hole for surface
32 pixman_region32_init(&surface->damage);
33 pixman_region32_init(&surface->opaque);
34 region_init_infinite(&surface->input);
35 + pixman_region32_init(&surface->hole);
37 wl_list_init(&surface->views);
38 wl_list_init(&surface->paint_node_list);
39 @@ -2378,6 +2379,7 @@ weston_surface_unref(struct weston_surface *surface)
40 pixman_region32_fini(&surface->damage);
41 pixman_region32_fini(&surface->opaque);
42 pixman_region32_fini(&surface->input);
43 + pixman_region32_fini(&surface->hole);
45 wl_resource_for_each_safe(cb, next, &surface->frame_callback_list)
53 + * HACK: Make a hole for this surface
59 + * wl_surface_set_opaque_region(surface, region);
70 + pixman_region32_copy(&surface->hole, &hole);
74 + weston_surface_damage(surface);
78 pixman_region32_copy(&surface->pending.opaque,
136 + // HACK: Make hole for the surface(excluding it's lower subsurface area)
137 + if (pixman_region32_not_empty(&pnode->surface->hole)) {
142 + wl_list_for_each_reverse(child, &pnode->surface->subsurface_list,
144 + if (child->surface == pnode->surface)
150 + child->surface->width,
151 + child->surface->height);
154 + pixman_region32_subtract(®ion, &pnode->surface->hole, ®ion);
167 /* blended region is whole surface minus opaque region: */
169 pnode->surface->width, pnode->surface->height);