kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16.git/commit/?id=345a7a1d7de8a11bd05c24a043196a8ff46b4299

commit 345a7a1d7de8a11bd05c24a043196a8ff46b4299
Author: Kim Woelders <[email protected]>
Date:   Sat Jan 24 12:09:56 2015 +0100

    CM: Cosmetics.
---
 src/ecompmgr.c | 107 ++++++++++++++++++++++++++++++---------------------------
 1 file changed, 56 insertions(+), 51 deletions(-)

diff --git a/src/ecompmgr.c b/src/ecompmgr.c
index 80453fc..7920e03 100644
--- a/src/ecompmgr.c
+++ b/src/ecompmgr.c
@@ -74,12 +74,10 @@
 
 #define ENABLE_DEBUG   1
 #if ENABLE_DEBUG
-#define Dprintf(fmt...)  if(EDebug(EDBUG_TYPE_COMPMGR))Eprintf(fmt)
-#define D1printf(fmt...) if(EDebug(EDBUG_TYPE_COMPMGR2))Eprintf(fmt)
-#define D2printf(fmt...) if(EDebug(EDBUG_TYPE_COMPMGR3))Eprintf(fmt)
-#define D3printf(fmt...) if(EDebug(EDBUG_TYPE_COMPMGR3)>1)Eprintf(fmt)
+#define D1printf(fmt...) if(EDebug(EDBUG_TYPE_COMPMGR))Eprintf(fmt)
+#define D2printf(fmt...) if(EDebug(EDBUG_TYPE_COMPMGR2))Eprintf(fmt)
+#define D3printf(fmt...) if(EDebug(EDBUG_TYPE_COMPMGR3))Eprintf(fmt)
 #else
-#define Dprintf(fmt...)
 #define D1printf(fmt...)
 #define D2printf(fmt...)
 #define D3printf(fmt...)
@@ -98,6 +96,15 @@
 #define INV_GEOM    (INV_POS | INV_SIZE | INV_SHAPE)
 #define INV_ALL     (INV_POS | INV_SIZE | INV_CLIP | INV_OPACITY | INV_SHADOW 
| INV_PIXMAP)
 
+/*
+ * Eobj compositing data hook
+ */
+
+#define WINDOW_UNREDIR  0
+#define WINDOW_SOLID    1
+#define WINDOW_TRANS    2
+#define WINDOW_ARGB     3
+
 typedef struct _cmhook ECmWinInfo;
 
 struct _cmhook {
@@ -138,6 +145,12 @@ struct _cmhook {
 /*
  * Configuration
  */
+
+#define ECM_MODE_OFF    0
+#define ECM_MODE_ROOT   1
+#define ECM_MODE_WINDOW 2
+#define ECM_MODE_AUTO   3
+
 #if ENABLE_SHADOWS
 #define ECM_SHADOWS_OFF      0
 #define ECM_SHADOWS_SHARP    1 /* use window alpha for shadow; sharp, but 
precise */
@@ -150,7 +163,7 @@ struct _cmhook {
 #define ECM_OR_ON_MAPUNMAP   2
 #define ECM_OR_ON_CREATE     3
 
-static struct {
+typedef struct {
    char                enable;
    char                use_name_pixmap;
 #if USE_COMPOSITE_OVERLAY_WINDOW
@@ -177,17 +190,15 @@ static struct {
       int                 mode;
       int                 opacity;
    } override_redirect;
-} Conf_compmgr;
+} Conf_compmgr_t;
+
+Conf_compmgr_t      Conf_compmgr;
 
 /*
  * State
  */
-#define ECM_MODE_OFF    0
-#define ECM_MODE_ROOT   1
-#define ECM_MODE_WINDOW 2
-#define ECM_MODE_AUTO   3
 
-static struct {
+typedef struct {
    int                 mode;
    EX_Window           root;
 #if USE_COMPOSITE_OVERLAY_WINDOW
@@ -204,13 +215,17 @@ static struct {
    char                got_damage;
    EX_SrvRegion        rgn_screen;
    EX_SrvRegion        rgn_clip;
+   EX_SrvRegion        rgn_tmp;        /* For temporary use */
+   EX_SrvRegion        rgn_tmp2;       /* For temporary use */
    int                 shadow_mode;
    float               opac_blur;      /* 0. -> 1. */
    float               opac_sharp;     /* 0. -> 1. */
 #if USE_XPRESENT
    unsigned int        present_serial;
 #endif
-} Mode_compmgr;
+} Mode_compmgr_t;
+
+Mode_compmgr_t      Mode_compmgr;
 
 /* FIXME - Optimize according to what actually changed */
 #define _ECM_SET_CLIP_CHANGED()   Mode_compmgr.reorder = 1
@@ -220,24 +235,15 @@ static struct {
 static EX_Picture   rootPicture;
 static EX_Picture   rootBuffer;
 
-static EX_SrvRegion rgn_tmp;   /* Region for temporary use */
-static EX_SrvRegion rgn_tmp2;  /* Region for temporary use */
-
 static ESelection  *wm_cm_sel = NULL;
 
 #define OPAQUE          0xffffffff
 #define OP32To8(op) (((unsigned int)(op)) >> 24)
 
-#define WINDOW_UNREDIR  0
-#define WINDOW_SOLID    1
-#define WINDOW_TRANS    2
-#define WINDOW_ARGB     3
-
 static void         ECompMgrDamageAll(void);
 static void         ECompMgrHandleRootEvent(Win win, XEvent * ev, void *prm);
 static void         ECompMgrHandleWindowEvent(Win win, XEvent * ev, void *prm);
 static void         ECompMgrWinInvalidate(EObj * eo, int what);
-static void         ECompMgrWinSetPicts(EObj * eo);
 static void         ECompMgrWinFadeEnd(EObj * eo, int done);
 static int          ECompMgrDetermineOrder(EObj * const *lst, int num,
                                           EObj ** first, EObj ** last,
@@ -253,7 +259,7 @@ static int          ECompMgrDetermineOrder(EObj * const 
*lst, int num,
 void
 ECompMgrWinClipToGC(EObj * eo, GC gc)
 {
-   EX_SrvRegion        rgn = rgn_tmp2;
+   EX_SrvRegion        rgn = Mode_compmgr.rgn_tmp2;
 
    if (!eo || !eo->cmhook)
       return;
@@ -271,16 +277,13 @@ ECompMgrWinClipToGC(EObj * eo, GC gc)
 void
 ECompMgrDeskConfigure(Desk * dsk)
 {
-   EObj               *eo;
-   ECmWinInfo         *cw;
+   EObj               *eo = dsk->bg.o;
+   ECmWinInfo         *cw = eo->cmhook;
    EX_Picture          pict;
    XRenderPictFormat  *pictfmt;
    XRenderPictureAttributes pa;
    EX_Pixmap           pmap;
 
-   eo = dsk->bg.o;
-   cw = eo->cmhook;
-
    if (dsk->bg.pmap == NoXID)
      {
        pmap = XCreatePixmap(disp, Mode_compmgr.root, 1, 1, WinGetDepth(VROOT));
@@ -390,7 +393,7 @@ ECompMgrDamageMergeObject(EObj * eo, EX_SrvRegion damage)
       ECompMgrDetermineOrder(NULL, 0, &Mode_compmgr.eo_first,
                             &Mode_compmgr.eo_last, DeskGet(0), NoXID);
 
-   damage = ERegionCopy(rgn_tmp, damage);
+   damage = ERegionCopy(Mode_compmgr.rgn_tmp, damage);
 
 #if USE_CLIP_RELATIVE_TO_DESK
    if (cw->have_clip && eo->type != EOBJ_TYPE_DESK)
@@ -810,8 +813,9 @@ ECompMgrWinSetShape(EObj * eo)
        if (WinIsShaped(EobjGetWin(eo)))
          {
             /* Intersect with window size to get effective bounding region */
-            ERegionSetRect(rgn_tmp, 0, 0, EobjGetW(eo), EobjGetH(eo));
-            ERegionIntersect(cw->shape, rgn_tmp);
+            ERegionSetRect(Mode_compmgr.rgn_tmp,
+                           0, 0, EobjGetW(eo), EobjGetH(eo));
+            ERegionIntersect(cw->shape, Mode_compmgr.rgn_tmp);
          }
        x = EobjGetX(eo) + EobjGetBW(eo);
        y = EobjGetY(eo) + EobjGetBW(eo);
@@ -1286,12 +1290,12 @@ ECompMgrWinMoveResize(EObj * eo, int change_xy, int 
change_wh, int change_bw)
    if (cw->have_extents)
      {
        /* Invalidate old window region */
-       ERegionCopy(rgn_tmp2, cw->extents);
+       ERegionCopy(Mode_compmgr.rgn_tmp2, cw->extents);
        ECompMgrWinInvalidate(eo, invalidate);
        /* Invalidate new window region */
        ECompMgrWinSetExtents(eo);
-       ERegionUnion(rgn_tmp2, cw->extents);
-       ECompMgrDamageMergeObject(eo, rgn_tmp2);
+       ERegionUnion(Mode_compmgr.rgn_tmp2, cw->extents);
+       ECompMgrDamageMergeObject(eo, Mode_compmgr.rgn_tmp2);
      }
    else
      {
@@ -1499,7 +1503,7 @@ ECompMgrWinDamage(EObj * eo, XEvent * ev)
      }
    else
      {
-       parts = rgn_tmp;
+       parts = Mode_compmgr.rgn_tmp;
        XDamageSubtract(disp, cw->damage, NoXID, parts);
        ERegionTranslate(parts, EobjGetX(eo) + EobjGetBW(eo),
                         EobjGetY(eo) + EobjGetBW(eo));
@@ -1686,7 +1690,7 @@ ECompMgrDetermineOrder(EObj * const *lst, int num, EObj 
** first,
             ERegionUnion(clip, cw->shape);
 #else
             ERegionUnionOffset(clip, EoGetX(dsk), EoGetY(dsk), cw->shape,
-                               rgn_tmp);
+                               Mode_compmgr.rgn_tmp);
 #endif
             break;
 
@@ -1722,7 +1726,7 @@ ECompMgrRepaintObjSetClip(EX_SrvRegion rgn, EX_SrvRegion 
damage,
 {
    ERegionCopy(rgn, damage);
 #if USE_CLIP_RELATIVE_TO_DESK
-   ERegionSubtractOffset(rgn, x, y, clip, rgn_tmp);
+   ERegionSubtractOffset(rgn, x, y, clip, Mode_compmgr.rgn_tmp);
 #else
    ERegionSubtract(rgn, clip);
    x = y = 0;
@@ -1739,8 +1743,9 @@ ECompMgrRepaintObjSetClip2(EObj * eo, EX_SrvRegion clip, 
int x, int y)
     * ECompMgrWinSetPicts() (when needed, i.e. source pict is pixmap). */
    if (WinIsShaped(EobjGetWin(eo)))
      {
-       clip = ERegionCopy(rgn_tmp, clip);
-       ERegionIntersectOffset(clip, x, y, eo->cmhook->shape, rgn_tmp2);
+       clip = ERegionCopy(Mode_compmgr.rgn_tmp, clip);
+       ERegionIntersectOffset(clip, x, y, eo->cmhook->shape,
+                              Mode_compmgr.rgn_tmp2);
      }
 #else
    eo = NULL;
@@ -1827,7 +1832,7 @@ ECompMgrRepaintObj(EX_Picture pbuf, EX_SrvRegion region, 
EObj * eo, int mode)
 
        if (clip == NoXID)
           clip = ECompMgrRepaintObjSetClip(rgn_clip, region, cw->clip, x, y);
-       ERegionSubtractOffset(clip, x, y, cw->shape, rgn_tmp);
+       ERegionSubtractOffset(clip, x, y, cw->shape, Mode_compmgr.rgn_tmp);
        EPictureSetClip(pbuf, clip);
 
        switch (Mode_compmgr.shadow_mode)
@@ -1918,8 +1923,8 @@ ECompMgrRepaint(void)
 
    ERegionIntersect(Mode_compmgr.damage, Mode_compmgr.rgn_screen);
 
-   Dprintf("%s: rootBuffer=%#x rootPicture=%#x\n", __func__,
-          rootBuffer, rootPicture);
+   D2printf("%s: rootBuffer=%#x rootPicture=%#x\n", __func__,
+           rootBuffer, rootPicture);
    if (EDebug(EDBUG_TYPE_COMPMGR2))
       ERegionShow("damage", Mode_compmgr.damage, NULL);
 
@@ -2035,7 +2040,7 @@ ECompMgrGetRootBuffer(void)
 static void
 ECompMgrRootConfigure(void *prm __UNUSED__, XEvent * ev)
 {
-   Dprintf("%s\n", __func__);
+   D1printf("%s\n", __func__);
 
    ECompMgrRootBufferDestroy();
    ECompMgrRootBufferCreate(ev->xconfigure.width, ev->xconfigure.height);
@@ -2165,8 +2170,8 @@ ECompMgrStart(void)
             /* Pass all input events through */
             XShapeCombineRectangles(disp, Mode_compmgr.cow, ShapeInput, 0, 0,
                                     NULL, 0, ShapeSet, Unsorted);
-            Dprintf("COW/CMroot=%#x/%#x\n",
-                    Mode_compmgr.cow, Mode_compmgr.root);
+            D1printf("COW/CMroot=%#x/%#x\n",
+                     Mode_compmgr.cow, Mode_compmgr.root);
          }
      }
    else
@@ -2207,8 +2212,8 @@ ECompMgrStart(void)
 
    Mode_compmgr.got_damage = 0;
 
-   rgn_tmp = ERegionCreate();
-   rgn_tmp2 = ERegionCreate();
+   Mode_compmgr.rgn_tmp = ERegionCreate();
+   Mode_compmgr.rgn_tmp2 = ERegionCreate();
 
    EventCallbackRegister(VROOT, ECompMgrHandleRootEvent, NULL);
 
@@ -2274,8 +2279,8 @@ ECompMgrStop(void)
 
    Mode_compmgr.got_damage = 0;
    REGION_DESTROY(Mode_compmgr.damage);
-   REGION_DESTROY(rgn_tmp);
-   REGION_DESTROY(rgn_tmp2);
+   REGION_DESTROY(Mode_compmgr.rgn_tmp);
+   REGION_DESTROY(Mode_compmgr.rgn_tmp2);
 
    if (Mode_compmgr.mode == ECM_MODE_ROOT)
       XCompositeUnredirectSubwindows(disp, WinGetXwin(VROOT),
@@ -2539,8 +2544,8 @@ ECompMgrInit(void)
  done:
    if (Conf_compmgr.mode == ECM_MODE_OFF)
       Conf_compmgr.enable = 0;
-   Dprintf("%s: enable=%d mode=%d\n", __func__,
-          Conf_compmgr.enable, Conf_compmgr.mode);
+   D1printf("%s: enable=%d mode=%d\n", __func__,
+           Conf_compmgr.enable, Conf_compmgr.mode);
 }
 
 static void

-- 


Reply via email to