From: <enl...@li...> - 2005-09-02 21:23:45
|
Enlightenment CVS committal Author : sebastid Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: * Make sure that the window isn't transient for itself. * If the window is transient for it's groups leader, don't register as a group member. =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.388 retrieving revision 1.389 diff -u -3 -r1.388 -r1.389 --- e_border.c 2 Sep 2005 21:06:57 -0000 1.388 +++ e_border.c 2 Sep 2005 21:23:39 -0000 1.389 @@ -4751,7 +4751,7 @@ E_Border *bd_parent; bd_parent = e_border_find_by_client_window(bd->client.icccm.transient_for); - if (bd_parent) + if ((bd_parent) && (bd_parent != bd)) { bd_parent->transients = evas_list_append(bd_parent->transients, bd); bd->parent = bd_parent; @@ -4764,8 +4764,12 @@ E_Border *bd_leader; bd_leader = e_border_find_by_client_window(bd->client.icccm.client_leader); - /* If this border is the leader of the group, don't register itself */ - if ((bd_leader) && (bd_leader != bd)) + /* + * If this border is the leader of the group, don't register itself + * If this window is transient, don't register if the leader is the + * same as the parent + */ + if ((bd_leader) && (bd_leader != bd) && (bd_leader != bd->parent)) { bd_leader->group = evas_list_append(bd_leader->group, bd); bd->leader = bd_leader; |