Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        ecompmgr.c ecompmgr.h settings.c 


Log Message:
Fix some fadeout bugs. Fade speed in dialog.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.c,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -3 -r1.72 -r1.73
--- ecompmgr.c  16 Oct 2005 15:51:59 -0000      1.72
+++ ecompmgr.c  19 Oct 2005 19:31:59 -0000      1.73
@@ -599,7 +599,7 @@
    ECmWinInfo         *cw = eo->cmhook;
    Desk               *dsk = eo->desk;
 
-   if (damage == None)
+   if (!Mode_compmgr.active || damage == None)
       return;
 
    if (dsk->num > 0 && !dsk->viewable && eo->ilayer < 512)
@@ -1244,6 +1244,7 @@
    cw->fadeout = 1;
    ECompMgrWinInvalidate(eo, INV_PICTURE);
    ECompMgrWinSetPicts(eo);
+   ECompMgrDamageMergeObject(eo, cw->extents, 0);
    ECompMgrWinFade(eo, cw->opacity, 0x10000000);
 }
 
@@ -1307,12 +1308,11 @@
 
    D1printf("ECompMgrWinUnmap %#lx\n", eo->win);
 
-   ECompMgrDamageMergeObject(eo, cw->extents, 0);
-
    if (Conf_compmgr.fading.enable && eo->fade)
       ECompMgrWinFadeOut(eo);
    else
      {
+       ECompMgrDamageMergeObject(eo, cw->extents, 0);
        _ECM_SET_STACK_CHANGED();
        ECompMgrWinInvalidate(eo, INV_PIXMAP);
      }
@@ -1599,7 +1599,11 @@
    D1printf("ECompMgrWinDel %#lx\n", eo->win);
 
    if (cw->fading)
-      ECompMgrWinFadeCancel(eo);
+     {
+       ECompMgrWinFadeCancel(eo);
+       if (cw->fadeout)
+          ECompMgrWinFadeOutEnd(eo);
+     }
 
    EventCallbackUnregister(eo->win, 0, ECompMgrHandleWindowEvent, eo);
 
@@ -2265,8 +2269,9 @@
 ECompMgrConfigGet(cfg_composite * cfg)
 {
    cfg->enable = Conf_compmgr.enable;
-   cfg->fading = Conf_compmgr.fading.enable;
    cfg->shadow = Conf_compmgr.shadows.mode;
+   cfg->fading = Conf_compmgr.fading.enable;
+   cfg->fade_speed = 100 - (Conf_compmgr.fading.dt_us / 1000);
 }
 
 void
@@ -2306,6 +2311,7 @@
      }
 
    Conf_compmgr.fading.enable = cfg->fading;
+   Conf_compmgr.fading.dt_us = (100 - cfg->fade_speed) * 1000;
 
    autosave();
 }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- ecompmgr.h  4 Oct 2005 22:08:12 -0000       1.20
+++ ecompmgr.h  19 Oct 2005 19:32:00 -0000      1.21
@@ -30,8 +30,9 @@
 typedef struct
 {
    char                enable;
-   char                fading;
    int                 shadow;
+   char                fading;
+   int                 fade_speed;
 } cfg_composite;
 
 struct _desk;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/settings.c,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -3 -r1.143 -r1.144
--- settings.c  10 Oct 2005 19:40:11 -0000      1.143
+++ settings.c  19 Oct 2005 19:32:00 -0000      1.144
@@ -749,18 +749,16 @@
    DialogItemRadioButtonGroupSetVal(di, 2);
    DialogItemRadioButtonGroupSetValPtr(radio, &Cfg_composite.shadow);
 
-#if 0
    di = DialogAddItem(table, DITEM_TEXT);
    DialogItemSetFill(di, 0, 0);
    DialogItemSetAlign(di, 0, 512);
-   DialogItemSetText(di, _("Fading Speed:\n"));
+   DialogItemSetText(di, _("Fading Speed:"));
 
    di = DialogAddItem(table, DITEM_SLIDER);
-   DialogItemSliderSetBounds(di, 0, 300);
-   DialogItemSliderSetUnits(di, 10);
-   DialogItemSliderSetJump(di, 25);
-   DialogItemSliderSetValPtr(di, &tmp_tooltiptime);
-#endif
+   DialogItemSliderSetBounds(di, 1, 100);
+   DialogItemSliderSetUnits(di, 5);
+   DialogItemSliderSetJump(di, 5);
+   DialogItemSliderSetValPtr(di, &Cfg_composite.fade_speed);
 
    di = DialogAddItem(table, DITEM_SEPARATOR);
    DialogItemSetColSpan(di, 2);




-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to