[PATCH 2/4 v2 weston] test purpose: filter out background/cursor/shell surface disable geometry transform for overlay
Zhao Halley
halley.zhao at intel.com
Thu Jun 7 02:42:52 PDT 2012
From: Zhao halley <halley.zhao at intel.com>
---
src/compositor-drm.c | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
mode change 100644 => 100755 src/compositor-drm.c
diff --git a/src/compositor-drm.c b/src/compositor-drm.c
old mode 100644
new mode 100755
index d588dbf..cb55753
--- a/src/compositor-drm.c
+++ b/src/compositor-drm.c
@@ -537,6 +537,17 @@ drm_output_prepare_overlay_surface(struct weston_output *output_base,
if (!drm_surface_overlap_supported(output_base, overlap))
return -1;
+ // filter out cursor
+ if (es->geometry.width == 32 && es->geometry.height == 32) {
+ return -1;
+ }
+
+ // filter out shell and background which width is 1366
+ if (es->geometry.width >1360) {
+ return -1;
+ }
+
+
wl_list_for_each(s, &c->sprite_list, link) {
if (!drm_sprite_crtc_supported(output_base, s->possible_crtcs))
continue;
@@ -596,6 +607,7 @@ drm_output_prepare_overlay_surface(struct weston_output *output_base,
* postion (note the caller has called weston_surface_update_transform()
* for us already).
*/
+#if 0
pixman_region32_init(&dest_rect);
pixman_region32_intersect(&dest_rect, &es->transform.boundingbox,
&output_base->region);
@@ -617,6 +629,17 @@ drm_output_prepare_overlay_surface(struct weston_output *output_base,
s->src_w = (box->x2 - box->x1) << 16;
s->src_h = (box->y2 - box->y1) << 16;
pixman_region32_fini(&src_rect);
+#else
+ s->dest_x = es->geometry.x;
+ s->dest_y = es->geometry.y;
+ s->dest_w = es->geometry.width;
+ s->dest_h = es->geometry.height;
+ s->src_x = 0;
+ s->src_y = 0;
+ s->src_w = es->geometry.width;
+ s->src_h = es->geometry.height;
+
+#endif
wl_signal_add(&es->buffer->resource.destroy_signal,
&s->pending_destroy_listener);
--
1.7.5.4
More information about the wayland-devel
mailing list