[mutter] window-group: Subtract the unredirected window in stage space
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] window-group: Subtract the unredirected window in stage space
- Date: Wed, 29 Aug 2012 18:40:21 +0000 (UTC)
commit bc96a14185a5d320582ad0b2c25222269d776fbf
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Wed Aug 29 14:50:31 2012 -0300
window-group: Subtract the unredirected window in stage space
meta_window_group_paint tries to carefully figure out which parts of the
scene it can avoid painting. One area it avoids painting is the region of
the screen occupied by an unredirected window (if there's one present).
When subtracting from the visible region, it gets the coordinate spaces
confused, and ends up subtracting the area at the wrong offset. Fix this
by translating the rectangle subtracted from the visible region.
https://bugzilla.gnome.org/show_bug.cgi?id=677116
src/compositor/meta-window-group.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/src/compositor/meta-window-group.c b/src/compositor/meta-window-group.c
index becb336..08e26c3 100644
--- a/src/compositor/meta-window-group.c
+++ b/src/compositor/meta-window-group.c
@@ -236,8 +236,11 @@ meta_window_group_paint (ClutterActor *actor)
if (info->unredirected_window != NULL)
{
+ int x, y;
cairo_rectangle_int_t unredirected_rect;
- meta_window_actor_get_shape_bounds (META_WINDOW_ACTOR (info->unredirected_window), &unredirected_rect);
+ MetaWindow *window = meta_window_actor_get_meta_window (info->unredirected_window);
+
+ meta_window_get_outer_rect (window, &unredirected_rect);
cairo_region_subtract_rectangle (visible_region, &unredirected_rect);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]