frames.c: Make clip_to_screen() actually clip to the screen

https://bugzilla.gnome.org/show_bug.cgi?id=630203
This commit is contained in:
Benjamin Otte 2010-09-16 17:16:12 +02:00
parent 3f8e6020f7
commit 94f4011844

View File

@ -2235,7 +2235,7 @@ clip_to_screen (MetaRegion *region, MetaUIFrame *frame)
META_CORE_GET_FRAME_Y, &frame_area.y,
META_CORE_GET_FRAME_WIDTH, &frame_area.width,
META_CORE_GET_FRAME_HEIGHT, &frame_area.height,
META_CORE_GET_SCREEN_WIDTH, &screen_area.height,
META_CORE_GET_SCREEN_WIDTH, &screen_area.width,
META_CORE_GET_SCREEN_HEIGHT, &screen_area.height,
META_CORE_GET_END);
@ -2245,6 +2245,10 @@ clip_to_screen (MetaRegion *region, MetaUIFrame *frame)
meta_region_intersect (region, tmp_region);
meta_region_destroy (tmp_region);
tmp_region = meta_region_new_from_rectangle (&screen_area);
meta_region_intersect (region, tmp_region);
meta_region_destroy (tmp_region);
meta_region_translate (region, - frame_area.x, - frame_area.y);
}