Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: desktops.c eobj.c eobj.h Log Message: Fix root resizing. =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/desktops.c,v retrieving revision 1.165 retrieving revision 1.166 diff -u -3 -r1.165 -r1.166 --- desktops.c 13 Aug 2005 23:05:40 -0000 1.165 +++ desktops.c 14 Aug 2005 19:34:20 -0000 1.166 @@ -488,13 +488,17 @@ d = _DeskGet(desk); - if (desk > 0) + if (d->num == 0) + { + EoSync(d); + } + else { x = (d->viewable) ? EoGetX(d) : VRoot.w; EoMoveResize(d, x, 0, w, h); } BackgroundPixmapFree(d->bg); - DeskRefresh(desk); + DeskRefresh(d->num); DeskControlsDestroy(d); DeskControlsCreate(d); DeskControlsShow(d); @@ -571,7 +575,7 @@ return; d->dirty_stack++; - if (EventDebug(EDBUG_TYPE_DESKS)) + if (EventDebug(EDBUG_TYPE_STACKING)) Eprintf("DeskSetDirtyStack %d (%d)\n", desk, d->dirty_stack); } @@ -844,7 +848,7 @@ return; if (EventDebug(EDBUG_TYPE_DESKS)) - Eprintf("DeskRefresh %d\n", desk); + Eprintf("DeskRefresh %d - %dx%d\n", desk, EoGetW(d), EoGetH(d)); bg = d->bg; if (!bg) @@ -1289,7 +1293,7 @@ if (EventDebug(EDBUG_TYPE_STACKING)) { - Eprintf("StackDesktop %d:\n", desk); + Eprintf("StackDesktop %d (%d):\n", d->num, d->dirty_stack); for (i = 0; i < tot; i++) Eprintf(" win=%#10lx parent=%#10lx\n", wl[i], EWindowGetParent(wl[i])); @@ -1301,8 +1305,6 @@ if (wl) Efree(wl); - if (EventDebug(EDBUG_TYPE_DESKS)) - Eprintf("StackDesktop %d (%d)\n", d->num, d->dirty_stack); d->dirty_stack = 0; } =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/eobj.c,v retrieving revision 1.43 retrieving revision 1.44 diff -u -3 -r1.43 -r1.44 --- eobj.c 7 Aug 2005 10:51:07 -0000 1.43 +++ eobj.c 14 Aug 2005 19:34:20 -0000 1.44 @@ -206,6 +206,18 @@ Efree(eo); } +void +EobjSync(EObj * eo) +{ + int x, y, w, h; + + EGetGeometry(eo->win, NULL, &x, &y, &w, &h, NULL, NULL); + eo->x = x; + eo->y = y; + eo->w = w; + eo->h = h; +} + EObj * EobjWindowCreate(int type, int x, int y, int w, int h, int su, const char *name) { =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/eobj.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- eobj.h 10 Aug 2005 19:23:58 -0000 1.3 +++ eobj.h 14 Aug 2005 19:34:20 -0000 1.4 @@ -89,6 +89,7 @@ #define EoSetShadow(eo, _x) #endif +#define EoSync(eo) EobjSync(EoObj(eo)) #define EoMap(eo, raise) EobjMap(EoObj(eo), raise) #define EoUnmap(eo) EobjUnmap(EoObj(eo)) #define EoMove(eo, x, y) EobjMove(EoObj(eo), x, y) @@ -104,12 +105,15 @@ int w, int h, int su, const char *name); void EobjFini(EObj * eo); void EobjDestroy(EObj * eo); +void EobjSync(EObj * eo); + EObj *EobjWindowCreate(int type, int x, int y, int w, int h, int su, const char *name); void EobjWindowDestroy(EObj * eo); EObj *EobjRegister(Window win, int type); void EobjUnregister(EObj * eo); + void EobjMap(EObj * eo, int raise); void EobjUnmap(EObj * eo); void EobjMove(EObj * eo, int x, int y); ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs