compositor: make overlap computation use the boundingbox

This makes the overlap to account for surface transformations.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
diff --git a/src/compositor.c b/src/compositor.c
index 9f94abf..87c0fbe 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -910,18 +910,15 @@
 	pixman_region32_init(&overlap);
 
 	wl_list_for_each(es, &ec->surface_list, link) {
+		weston_surface_update_transform(es);
+
 		pixman_region32_init(&surface_overlap);
-		pixman_region32_intersect_rect(&surface_overlap,
-					       &overlap,
-					       es->geometry.x, es->geometry.y,
-					       es->geometry.width,
-					       es->geometry.height);
+		pixman_region32_intersect(&surface_overlap, &overlap,
+					  &es->transform.boundingbox);
 		es->overlapped = pixman_region32_not_empty(&surface_overlap);
 		pixman_region32_fini(&surface_overlap);
-		pixman_region32_union_rect(&overlap, &overlap,
-					   es->geometry.x, es->geometry.y,
-					   es->geometry.width,
-					   es->geometry.height);
+		pixman_region32_union(&overlap, &overlap,
+				      &es->transform.boundingbox);
 	}
 
 	weston_output_set_cursor(output, ec->input_device);