diff -u compiz-0.6.0+git20071008/debian/changelog compiz-0.6.0+git20071008/debian/changelog --- compiz-0.6.0+git20071008/debian/changelog +++ compiz-0.6.0+git20071008/debian/changelog @@ -1,3 +1,10 @@ +compiz (1:0.6.0+git20071008-0ubuntu2) gutsy-security; urgency=low + + * Never unredirect the gnome-screensaver to avoid that it looses + its keyboard grab (LP: #145123) + + -- Michael Vogt Sat, 27 Oct 2007 12:01:24 -0400 + compiz (1:0.6.0+git20071008-0ubuntu1) gutsy; urgency=low * New git snapshot: diff -u compiz-0.6.0+git20071008/debian/patches/030_fix_screensaver compiz-0.6.0+git20071008/debian/patches/030_fix_screensaver --- compiz-0.6.0+git20071008/debian/patches/030_fix_screensaver +++ compiz-0.6.0+git20071008/debian/patches/030_fix_screensaver @@ -1,7 +1,7 @@ -Index: ubuntu/src/screen.c +Index: compiz-0.6.0+git20071008/src/screen.c =================================================================== ---- ubuntu.orig/src/screen.c 2007-10-04 14:37:03.000000000 +0200 -+++ ubuntu/src/screen.c 2007-10-09 00:11:36.000000000 +0200 +--- compiz-0.6.0+git20071008.orig/src/screen.c 2007-10-10 05:09:06.000000000 -0400 ++++ compiz-0.6.0+git20071008/src/screen.c 2007-10-27 12:04:36.000000000 -0400 @@ -2244,7 +2244,8 @@ for (w = s->windows; w; w = w->next) if (w->frame == id) @@ -14,0 +15,17 @@ +Index: compiz-0.6.0+git20071008/src/paint.c +=================================================================== +--- compiz-0.6.0+git20071008.orig/src/paint.c 2007-10-27 12:05:10.000000000 -0400 ++++ compiz-0.6.0+git20071008/src/paint.c 2007-10-27 12:06:54.000000000 -0400 +@@ -211,8 +211,11 @@ + if (count == 0 && + !REGION_NOT_EMPTY (tmpRegion) && + screen->opt[COMP_SCREEN_OPTION_UNREDIRECT_FS].value.b && +- XEqualRegion (w->region, &screen->region)) ++ XEqualRegion (w->region, &screen->region) && ++ !(w->resName && strcmp(w->resName, "gnome-screensaver") == 0) ++ ) + { ++ + unredirectWindow (w); + fullscreenWindow = w; + }