summaryrefslogtreecommitdiff
blob: e2de8fd8563f2f1079d881a45f98d0b700e2e110 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Index: compiz-0.6.2/src/screen.c
===================================================================
--- compiz-0.6.2.orig/src/screen.c
+++ compiz-0.6.2/src/screen.c
@@ -2244,7 +2244,8 @@ findTopLevelWindowAtScreen (CompScreen *
 	    for (w = s->windows; w; w = w->next)
 		if (w->frame == id)
 		    return w;
-	}
+	} else if (w->resName && strstr(w->resName,"screensaver"))
+	    return w;
 
 	return NULL;
     }
Index: compiz-0.6.2/src/paint.c
===================================================================
--- compiz-0.6.2.orig/src/paint.c
+++ compiz-0.6.2/src/paint.c
@@ -211,7 +211,9 @@ paintOutputRegion (CompScreen	       *sc
 	    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;