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

Reply via email to