Author: olivier
Date: 2006-08-23 21:56:45 +0000 (Wed, 23 Aug 2006)
New Revision: 22859

Modified:
   xfwm4/trunk/src/compositor.c
Log:
Don't show shadow with fullscreen and windows that set the NET_WM_STATE_BELOW 
property (like gdesklet for example)

Modified: xfwm4/trunk/src/compositor.c
===================================================================
--- xfwm4/trunk/src/compositor.c        2006-08-23 19:08:29 UTC (rev 22858)
+++ xfwm4/trunk/src/compositor.c        2006-08-23 21:56:45 UTC (rev 22859)
@@ -66,6 +66,7 @@
 /* Some convenient macros */
 #define WIN_HAS_FRAME(cw)               ((cw->c) && FLAG_TEST 
(cw->c->xfwm_flags, XFWM_FLAG_HAS_BORDER) && \
                                          !FLAG_TEST (cw->c->flags, 
CLIENT_FLAG_FULLSCREEN))
+#define WIN_NO_SHADOW(cw)               ((cw->c) &&  FLAG_TEST (cw->c->flags, 
CLIENT_FLAG_FULLSCREEN | CLIENT_FLAG_BELOW))
 #define WIN_IS_OVERRIDE(cw)             (cw->c == NULL)
 #define WIN_IS_ARGB(cw)                 (cw->argb)
 #define WIN_IS_OPAQUE(cw)               (((cw->opacity == NET_WM_OPAQUE) && 
!WIN_IS_ARGB(cw)) || (cw->screen_info->overlays))
@@ -81,7 +82,6 @@
 #define WIN_IS_VISIBLE(cw)              (WIN_IS_VIEWABLE(cw) && 
WIN_HAS_DAMAGE(cw))
 #define WIN_IS_DAMAGED(cw)              (cw->damaged)
 #define WIN_IS_REDIRECTED(cw)           (cw->redirected)
-
 #define USE_IDLE_REPAINT
 
 typedef struct _CWindow CWindow;
@@ -924,12 +924,13 @@
      */
 
     if (!(screen_info->overlays) &&
-         ((WIN_IS_OVERRIDE(cw) && 
-             !(WIN_IS_ARGB(cw) || WIN_IS_SHAPED(cw)) && 
-             screen_info->params->show_popup_shadow) || 
-         (!WIN_IS_OVERRIDE(cw) && 
-             (WIN_HAS_FRAME(cw) || !(WIN_IS_ARGB(cw) || WIN_IS_SHAPED(cw))) && 
-             screen_info->params->show_frame_shadow)))
+         (screen_info->params->show_popup_shadow && 
+              WIN_IS_OVERRIDE(cw) && 
+              !(WIN_IS_ARGB(cw) || WIN_IS_SHAPED(cw))) || 
+         (screen_info->params->show_frame_shadow &&
+              !WIN_IS_OVERRIDE(cw) && 
+              !WIN_NO_SHADOW(cw) &&
+              (WIN_HAS_FRAME(cw) || !(WIN_IS_ARGB(cw) || WIN_IS_SHAPED(cw)))))
     {
         XRectangle sr;
 

_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to