Index: compmgr.c =================================================================== RCS file: /var/cvs/e/e_modules/bling/compmgr.c,v retrieving revision 1.11 diff -u -r1.11 compmgr.c --- compmgr.c 31 Dec 2006 11:07:18 -0000 1.11 +++ compmgr.c 10 Jul 2007 23:09:38 -0000 @@ -719,6 +719,7 @@ if (bd && bd->client.shaped) needs_shadow = False; + r.x = w->a.x; r.y = w->a.y; r.width = w->a.w + w->a.border * 2; @@ -727,7 +728,8 @@ && !(w->windowType == ECORE_X_WINDOW_TYPE_DOCK && !(config->shadow_dock_enable))) { - if (compMode == CompServerShadows || w->mode != WINDOW_ARGB) + if (compMode == CompServerShadows || w->mode != WINDOW_ARGB || + (bd)) // && (!bd->client.border.name || strcmp(bd->client.border.name, "borderless")))) { Ecore_X_Rectangle sr; @@ -756,7 +758,7 @@ if (w->shadowSize > 100) opacity = opacity / (w->shadowSize * 0.01); - if (w->mode == WINDOW_TRANS) + if (w->mode == WINDOW_TRANS || WINDOW_ARGB) opacity = opacity * ((double) w->opacity) / ((double) OPAQUE); w->shadow = @@ -994,7 +996,7 @@ solid_picture(False, (double) w->opacity / OPAQUE, shadowColor.red, shadowColor.green, shadowColor.blue); - if (w->mode == WINDOW_TRANS) + if (w->mode == WINDOW_TRANS) { int x, y, wid, hei; @@ -1327,7 +1329,7 @@ if (format && format->type == PictTypeDirect && format->direct.alphaMask) { - mode = WINDOW_ARGB; + mode = WINDOW_ARGB; } else if (w->opacity != OPAQUE) {