From: <enl...@li...> - 2005-09-21 18:06:22
|
Enlightenment CVS committal Author : sebastid Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/pager Modified Files: e_mod_main.c Log Message: If the border we stack above/below isn't on the same desk, find the border above/below on the same desk. =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/pager/e_mod_main.c,v retrieving revision 1.128 retrieving revision 1.129 diff -u -3 -r1.128 -r1.129 --- e_mod_main.c 21 Sep 2005 16:36:20 -0000 1.128 +++ e_mod_main.c 21 Sep 2005 18:06:12 -0000 1.129 @@ -1380,7 +1380,10 @@ /* create it and add it */ pw = _pager_window_new(pd, ev->border); if (pw) - pd->wins = evas_list_append(pd->wins, pw); + { + pd->wins = evas_list_append(pd->wins, pw); + e_border_raise(pw->border); + } } } else @@ -1392,7 +1395,10 @@ /* create it and add it */ pw = _pager_window_new(pd, ev->border); if (pw) - pd->wins = evas_list_append(pd->wins, pw); + { + pd->wins = evas_list_append(pd->wins, pw); + e_border_raise(pw->border); + } } } } @@ -1425,7 +1431,22 @@ if (pw) { if (ev->stack) - pw2 = _pager_desk_border_find(pd, ev->stack); + { + pw2 = _pager_desk_border_find(pd, ev->stack); + if (!pw2) + { + /* This border is on another desk... */ + E_Border *bd = NULL; + + if (ev->type == E_STACKING_ABOVE) + bd = e_util_desk_border_below(ev->border); + else if (ev->type == E_STACKING_BELOW) + bd = e_util_desk_border_above(ev->border); + + if (bd) + pw2 = _pager_desk_border_find(pd, bd); + } + } if (ev->type == E_STACKING_ABOVE) { if (pw2) |