Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: ewins.c hints.c Log Message: Remember (certain types of) dockapps as such across restart. =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/ewins.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- ewins.c 4 Mar 2005 22:14:58 -0000 1.24 +++ ewins.c 5 Mar 2005 00:30:45 -0000 1.25 @@ -617,6 +617,7 @@ { DockIt(ewin); ewin->props.donthide = 1; + ewin->focusclick = 1; } doslide = Conf.mapslide && !Mode.wm.startup; @@ -1777,6 +1778,9 @@ if (EwinIsInternal(ewin)) continue; + if (ewin->iconified) + ICCCM_DeIconify(ewin); + /* This makes E determine the client window stacking at exit */ EwinInstantUnShade(ewin); EReparentWindow(ewin->client.win, VRoot.win, =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/hints.c,v retrieving revision 1.33 retrieving revision 1.34 diff -u -3 -r1.33 -r1.34 --- hints.c 22 Feb 2005 17:40:15 -0000 1.33 +++ hints.c 5 Mar 2005 00:30:46 -0000 1.34 @@ -333,7 +333,7 @@ EHintsSetInfo(const EWin * ewin) { static Atom a = 0, aa = 0; - CARD32 c[8]; + int c[9]; if (EwinIsInternal(ewin)) return; @@ -348,14 +348,13 @@ c[2] = EoGetX(ewin); c[3] = EoGetY(ewin); c[4] = ewin->iconified; - if (ewin->iconified) - ICCCM_DeIconify(ewin); c[5] = ewin->shaded; c[6] = ewin->client.w; c[7] = ewin->client.h; + c[8] = ewin->docked; + + ecore_x_window_prop_card32_set(ewin->client.win, a, c, 9); - XChangeProperty(disp, ewin->client.win, a, XA_CARDINAL, 32, PropModeReplace, - (unsigned char *)c, 8); XChangeProperty(disp, ewin->client.win, aa, XA_STRING, 8, PropModeReplace, (unsigned char *)ewin->normal_border->name, strlen(ewin->normal_border->name) + 1); @@ -371,11 +370,11 @@ { static Atom a = 0, aa = 0; Atom a2; - CARD32 *c; char *str; unsigned long lnum, ldummy; int num, dummy; unsigned char *puc; + int c[9]; if (EwinIsInternal(ewin)) return 0; @@ -385,43 +384,42 @@ if (!aa) aa = XInternAtom(disp, "ENL_INTERNAL_DATA_BORDER", False); + num = ecore_x_window_prop_card32_get(ewin->client.win, a, c, 9); + if (num < 8) + return 0; + + EoSetDesk(ewin, c[0]); + EoSetSticky(ewin, c[1]); + ewin->client.x = c[2]; + ewin->client.y = c[3]; + ewin->iconified = c[4]; + ewin->shaded = c[5]; + ewin->client.w = c[6]; + ewin->client.h = c[7]; + if (num >= 9) /* Compatibility */ + ewin->docked = c[8]; + + ewin->client.grav = NorthWestGravity; + if (ewin->iconified) + { + ewin->client.start_iconified = 1; + ewin->iconified = 0; + } + ewin->client.already_placed = 1; + puc = NULL; - XGetWindowProperty(disp, ewin->client.win, a, 0, 10, True, XA_CARDINAL, &a2, - &dummy, &lnum, &ldummy, &puc); - c = (CARD32 *) puc; + XGetWindowProperty(disp, ewin->client.win, aa, 0, 0xffff, True, + XA_STRING, &a2, &dummy, &lnum, &ldummy, &puc); + str = (char *)puc; num = (int)lnum; - if ((num >= 8) && (c)) - { - EoSetSticky(ewin, c[1]); - EoSetDesk(ewin, c[0]); - ewin->client.x = c[2]; - ewin->client.y = c[3]; - ewin->client.grav = NorthWestGravity; - ewin->iconified = c[4]; - ewin->shaded = c[5]; - if (ewin->iconified) - { - ewin->client.start_iconified = 1; - ewin->iconified = 0; - } - ewin->client.already_placed = 1; - ewin->client.w = c[6]; - ewin->client.h = c[7]; - XFree(c); + if ((num > 0) && (str)) + EwinSetBorderByName(ewin, str, 0); + XFree(str); + if (EventDebug(EDBUG_TYPE_SNAPS)) + Eprintf("Snap get einf %#lx: %4d+%4d %4dx%4d: %s\n", + ewin->client.win, ewin->client.x, ewin->client.y, + ewin->client.w, ewin->client.h, EwinGetName(ewin)); - puc = NULL; - XGetWindowProperty(disp, ewin->client.win, aa, 0, 0xffff, True, - XA_STRING, &a2, &dummy, &lnum, &ldummy, &puc); - str = (char *)puc; - num = (int)lnum; - if ((num > 0) && (str)) - EwinSetBorderByName(ewin, str, 0); - XFree(str); - if (EventDebug(EDBUG_TYPE_SNAPS)) - Eprintf("Snap get einf %#lx: %4d+%4d %4dx%4d: %s\n", - ewin->client.win, ewin->client.x, ewin->client.y, - ewin->client.w, ewin->client.h, EwinGetName(ewin)); - } return 0; } ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs