[fusion-commits] Animation plugin: Changes to 'master' (401b7f6d2b19f3128c03b5bb6231709312063f97)

cornelius at server.beryl-project.org cornelius at server.beryl-project.org
Sun Jul 8 17:51:31 CEST 2007


New commits:
commit 401b7f6d2b19f3128c03b5bb6231709312063f97
Author: Erkin Bahceci <erkinbah at gmail.com>
Date:   Sun Jul 8 11:50:54 2007 -0400

    Avoid conflict with FadeDesktop.


 animation-internal.h |    1 +
 animation.c          |   21 +++++++++++++++++++--
 2 files changed, 20 insertions(+), 2 deletions(-)


Modified: fusion/plugins/animation/animation-internal.h
===================================================================
--- fusion/plugins/animation/animation-internal.h
+++ fusion/plugins/animation/animation-internal.h
@@ -461,6 +461,7 @@ typedef struct _AnimScreen
     Bool switcherActive;
     Bool groupTabChangeActive;
     Bool scaleActive;
+    Bool fadeDesktopActive;
 
     Bool switcherWinOpeningSuppressed; // whether switcher window opening
     // animation is suppressed yet

Modified: fusion/plugins/animation/animation.c
===================================================================
--- fusion/plugins/animation/animation.c
+++ fusion/plugins/animation/animation.c
@@ -1265,7 +1265,7 @@ initiateFocusAnimation(CompWindow *w)
 
     if (aw->curWindowEvent != WindowEventNone ||
 	as->scaleActive || as->switcherActive || 
-	as->groupTabChangeActive)
+	as->groupTabChangeActive || as->fadeDesktopActive)
     {
 	if (aw->restackInfo)
 	{
@@ -2611,6 +2611,20 @@ static void animHandleCompizEvent(CompDisplay * d, char *pluginName,
 	    }
 	}
     }
+    else if (strcmp(pluginName, "fadedesktop") == 0)
+    {
+	if (strcmp(eventName, "activate") == 0)
+	{
+	    Window xid = getIntOptionNamed(option, nOption, "root", 0);
+	    CompScreen *s = findScreenAtDisplay(d, xid);
+
+	    if (s)
+	    {
+		ANIM_SCREEN(s);
+		as->fadeDesktopActive = getBoolOptionNamed(option, nOption, "active", FALSE);
+	    }
+	}
+    }
 }
 
 static void
@@ -3247,7 +3261,9 @@ static Bool animDamageWindowRect(CompWindow * w, Bool initial, BoxPtr rect)
 
 	if (aw->state == IconicState)
 	{
-	    if (!w->invisible && as->minimizeEffect &&
+	    if (!w->invisible &&
+		as->minimizeEffect &&
+		!as->fadeDesktopActive &&
 		matchEval (&as->opt[ANIM_SCREEN_OPTION_MINIMIZE_MATCH].value.match, w))
 	    {
 		// UNMINIMIZE event!
@@ -3859,6 +3875,7 @@ static Bool animInitScreen(CompPlugin * p, CompScreen * s)
     as->switcherActive = FALSE;
     as->groupTabChangeActive = FALSE;
     as->scaleActive = FALSE;
+    as->fadeDesktopActive = FALSE;
 
     WRAP(as, s, preparePaintScreen, animPreparePaintScreen);
     WRAP(as, s, donePaintScreen, animDonePaintScreen);


More information about the commits mailing list