From 5a7d139f33288c77c77622cdcb1453a58e25a2ec Mon Sep 17 00:00:00 2001 From: Brandon Gooch Date: Sat, 11 Aug 2012 21:58:58 -0500 Subject: xcompmgr 1.1.6-1 doesn't draw shadows This patch reworks the XFixesIntersectRegion calls to apply to the correct window modes. Fixes: https://gitlab.freedesktop.org/xorg/app/xcompmgr/issues/3 Signed-off-by: Alan Coopersmith --- xcompmgr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xcompmgr.c b/xcompmgr.c index 4e40958..67ea020 100644 --- a/xcompmgr.c +++ b/xcompmgr.c @@ -1028,7 +1028,6 @@ paint_all (Display *dpy, XserverRegion region) { w->borderClip = XFixesCreateRegion (dpy, NULL, 0); XFixesCopyRegion (dpy, w->borderClip, region); - XFixesIntersectRegion(dpy, w->borderClip, w->borderClip, w->borderSize); } w->prev_trans = t; t = w; @@ -1080,6 +1079,8 @@ paint_all (Display *dpy, XserverRegion region) if (w->mode == WINDOW_TRANS) { int x, y, wid, hei; + XFixesIntersectRegion(dpy, w->borderClip, w->borderClip, w->borderSize); + XFixesSetPictureClipRegion(dpy, rootBuffer, 0, 0, w->borderClip); #if HAS_NAME_WINDOW_PIXMAP x = w->a.x; y = w->a.y; @@ -1099,6 +1100,8 @@ paint_all (Display *dpy, XserverRegion region) else if (w->mode == WINDOW_ARGB) { int x, y, wid, hei; + XFixesIntersectRegion(dpy, w->borderClip, w->borderClip, w->borderSize); + XFixesSetPictureClipRegion(dpy, rootBuffer, 0, 0, w->borderClip); #if HAS_NAME_WINDOW_PIXMAP x = w->a.x; y = w->a.y; -- cgit v1.2.3