Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        borders.c finders.c 


Log Message:
Ignore WM_TRANSIENT_FOR if pointing to self.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/borders.c,v
retrieving revision 1.184
retrieving revision 1.185
diff -u -3 -r1.184 -r1.185
--- borders.c   29 May 2004 19:07:41 -0000      1.184
+++ borders.c   29 May 2004 20:42:06 -0000      1.185
@@ -397,7 +397,9 @@
        /* tag the parent window if this is a transient */
        ewin2 = FindItem(NULL, ewin->client.transient_for, LIST_FINDBY_ID,
                         LIST_TYPE_EWIN);
-       if (ewin2)
+
+       /* Don't count a self-reference as a valid transient */
+       if (ewin2 && ewin2 != ewin)
           ewin2->has_transients++;
 
        if (Conf.focus.transientsfollowleader)
@@ -1738,7 +1740,7 @@
    call_depth++;
 
    if (EventDebug(EDBUG_TYPE_MOVERESIZE))
-      Eprintf("doMoveResizeEwin %#lx %d+%d %d*%d %d %s\n",
+      Eprintf("doMoveResizeEwin(%d) %#lx %d+%d %d*%d %d %s\n", call_depth,
              ewin->client.win, x, y, w, h, flags, EwinGetTitle(ewin));
 
    if (Mode.mode == MODE_NONE && Mode.move.check)
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/finders.c,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -3 -r1.29 -r1.30
--- finders.c   1 Apr 2004 22:41:21 -0000       1.29
+++ finders.c   29 May 2004 20:42:06 -0000      1.30
@@ -349,12 +349,15 @@
    j = 0;
    for (i = 0; i < n; i++)
      {
-       if (win == ewins[i]->client.transient_for)
-         {
-            j++;
-            lst = Erealloc(lst, sizeof(EWin *) * j);
-            lst[j - 1] = ewins[i];
-         }
+       if (win != ewins[i]->client.transient_for)
+          continue;
+       /* A self-reference is not a valid transient */
+       if (win == ewins[i]->client.win)
+          continue;
+
+       j++;
+       lst = Erealloc(lst, sizeof(EWin *) * j);
+       lst[j - 1] = ewins[i];
      }
    *num = j;
    EDBUG_RETURN(lst);




-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. 
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to