Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: desktops.c desktops.h ecompmgr.c ecompmgr.h Log Message: Still more background handling change bits. =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/desktops.c,v retrieving revision 1.205 retrieving revision 1.206 diff -u -3 -r1.205 -r1.206 --- desktops.c 1 Dec 2005 18:30:47 -0000 1.205 +++ desktops.c 1 Dec 2005 21:25:42 -0000 1.206 @@ -438,8 +438,10 @@ win = (desk == 0) ? VRoot.win : None; Esnprintf(buf, sizeof(buf), "Desk-%d", desk); + EoSetNoRedirect(dsk, 1); EoInit(dsk, EOBJ_TYPE_DESK, win, 0, 0, VRoot.w, VRoot.h, 0, buf); EventCallbackRegister(EoGetWin(dsk), 0, DeskHandleEvents, dsk); + EoSetFade(dsk, 0); EoSetShadow(dsk, 0); if (desk == 0) { @@ -504,33 +506,31 @@ } static void -DeskBackgroundConfigure(Desk * dsk, int set, Pixmap pmap, unsigned int pixel) +DeskBackgroundConfigure(Desk * dsk) { Window win; win = EoGetWin(dsk); - if (set) + if (dsk->viewable) { - if (!ECompMgrDeskConfigure(dsk, set, pmap, pixel)) + if (!ECompMgrDeskConfigure(dsk)) { - if (pmap != None) - ESetWindowBackgroundPixmap(win, pmap); + if (dsk->bg.pmap != None) + ESetWindowBackgroundPixmap(win, dsk->bg.pmap); else - ESetWindowBackground(win, pixel); + ESetWindowBackground(win, dsk->bg.pixel); EClearWindow(win); } - if (pmap != None) - BackgroundPixmapSet(dsk->bg.bg, pmap); - HintsSetRootInfo(win, pmap, pixel); + HintsSetRootInfo(win, dsk->bg.pmap, dsk->bg.pixel); } else { if (!Conf.hints.set_xroot_info_on_root_window) HintsSetRootInfo(win, None, 0); - if (!ECompMgrDeskConfigure(dsk, set, pmap, pixel)) + if (!ECompMgrDeskConfigure(dsk)) { ESetWindowBackgroundPixmap(win, None); } @@ -559,7 +559,7 @@ } if (!dsk->viewable) - DeskBackgroundConfigure(dsk, 0, None, 0); + DeskBackgroundConfigure(dsk); } static void @@ -589,9 +589,13 @@ BackgroundRealize(bg, EoGetWin(dsk), EoGetW(dsk), EoGetH(dsk), 1, &pmap, &pixel); - DeskBackgroundConfigure(dsk, 1, pmap, pixel); + if (pmap != None && pmap != dsk->bg.pmap) + BackgroundPixmapSet(dsk->bg.bg, pmap); + dsk->bg.pmap = pmap; + dsk->bg.pixel = pixel; dsk->bg.isset = 1; + DeskBackgroundConfigure(dsk); } static void @@ -655,8 +659,10 @@ for (i = 0; i < Conf.desks.num; i++) { dsk = _DeskGet(i); - if (dsk->bg.bg != bg) + if (bg && dsk->bg.bg != bg) continue; + if (!bg) + dsk->bg.isset = 0; DeskBackgroundUpdate(dsk); } } =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/desktops.h,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- desktops.h 1 Dec 2005 18:30:47 -0000 1.16 +++ desktops.h 1 Dec 2005 21:25:42 -0000 1.17 @@ -45,6 +45,7 @@ { struct _background *bg; Pixmap pmap; + unsigned long pixel; char isset; } bg; struct =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.c,v retrieving revision 1.82 retrieving revision 1.83 diff -u -3 -r1.82 -r1.83 --- ecompmgr.c 29 Nov 2005 18:04:01 -0000 1.82 +++ ecompmgr.c 1 Dec 2005 21:25:42 -0000 1.83 @@ -480,13 +480,10 @@ */ int -ECompMgrDeskConfigure(Desk * dsk, int set, Pixmap pmap, unsigned int pixel) +ECompMgrDeskConfigure(Desk * dsk) { /* FIXME - To be implemented */ dsk = NULL; - set = 0; - pmap = None; - pixel = 0; return 0; } =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.h,v retrieving revision 1.22 retrieving revision 1.23 diff -u -3 -r1.22 -r1.23 --- ecompmgr.h 29 Nov 2005 18:04:01 -0000 1.22 +++ ecompmgr.h 1 Dec 2005 21:25:42 -0000 1.23 @@ -39,8 +39,7 @@ int EVisualIsARGB(Visual * vis); -int ECompMgrDeskConfigure(struct _desk *dsk, int set, - Pixmap pmap, unsigned int pixel); +int ECompMgrDeskConfigure(struct _desk *dsk); void ECompMgrWinNew(EObj * eo); void ECompMgrWinDel(EObj * eo); ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs