[beryl-commits] r1450 - trunk/beryl-plugins/src

quinn at server.beryl-project.org quinn at server.beryl-project.org
Sat Dec 2 00:21:51 CET 2006


Author: quinn
Date: 2006-12-02 00:21:51 +0100 (Sat, 02 Dec 2006)
New Revision: 1450

Modified:
   trunk/beryl-plugins/src/scale.c
Log:
beryl-plugins:
-fix scale animations, etc.


Modified: trunk/beryl-plugins/src/scale.c
===================================================================
--- trunk/beryl-plugins/src/scale.c	2006-11-29 15:56:39 UTC (rev 1449)
+++ trunk/beryl-plugins/src/scale.c	2006-12-01 23:21:51 UTC (rev 1450)
@@ -2054,6 +2054,7 @@
         {
             if (ss->state == SCALE_STATE_IN)
             {
+		ss->grab=FALSE;
                 removeScreenGrabKeyboardOptional
                     (s, ss->grabIndex, 0,
                      !ss->opt[SCALE_SCREEN_OPTION_ALLOW_KEYBOARD_INPUT].value.b);
@@ -2149,35 +2150,36 @@
     for (s = d->screens; s; s = s->next)
     {
         SCALE_SCREEN (s);
+        if (xid && s->root != xid)
+            continue;
+
         ss->currentWindow = 0;
         ss->allScreensMode = FALSE;
         ss->onlyCurrent = FALSE;
 
-        if (xid && s->root != xid)
-            continue;
-
         //clean up any sw->rescaled values that may still be true
         //causes odd behavior on next scale/zoom otherwise
         resetZoomValues (s);
 
         if (ss->grab)
         {
-	    if (ss->grabIndex)
-	    {
-	        removeScreenGrabKeyboardOptional (s, ss->grabIndex, 0,
-			!ss->opt[SCALE_SCREEN_OPTION_ALLOW_KEYBOARD_INPUT].value.b);
-		ss->grabIndex = 0;
-	    }
 	    if (ss->dndTarget)
 	        XUnmapWindow (d->display, ss->dndTarget);
 
-	    ss->grab = FALSE;
-
             if (ss->state == SCALE_STATE_NONE)
             {
-                if (ss->selectedWindow && !(state & CompActionStateCancel))
-                {
-                    CompWindow *w =
+		if (ss->grabIndex)
+		{
+		    removeScreenGrabKeyboardOptional (s, ss->grabIndex, 0,
+			    !ss->opt[SCALE_SCREEN_OPTION_ALLOW_KEYBOARD_INPUT].value.b);
+		    ss->grabIndex = 0;
+		}
+
+		ss->grab = FALSE;
+
+		if (ss->selectedWindow && !(state & CompActionStateCancel))
+		{
+		    CompWindow *w =
                         findWindowAtScreen (s, ss->selectedWindow);
                     if (w)
                     {




More information about the commits mailing list