Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        ecompmgr.c ecompmgr.h ewins.c x.c xwin.h 


Log Message:
Shuffle some stuff around. Add function to find ARGB visual.

===================================================================
RCS file: /cvs/e/e16/e/src/ecompmgr.c,v
retrieving revision 1.118
retrieving revision 1.119
diff -u -3 -r1.118 -r1.119
--- ecompmgr.c  1 Jun 2006 19:21:30 -0000       1.118
+++ ecompmgr.c  1 Jun 2006 20:18:40 -0000       1.119
@@ -209,31 +209,6 @@
                                           Desk * dsk, XserverRegion clip);
 
 /*
- * Visuals
- */
-
-int
-EVisualIsARGB(Visual * vis)
-{
-   XRenderPictFormat  *pictfmt;
-
-#if 0                          /* FIXME - Remove? */
-   if (!Mode_compmgr.active)
-      return 0;
-#endif
-
-   pictfmt = XRenderFindVisualFormat(disp, vis);
-   if (!pictfmt)
-      return 0;
-
-#if 0
-   Eprintf("Visual ID=%#lx Type=%d, alphamask=%d\n", vis->visualid,
-          pictfmt->type, pictfmt->direct.alphaMask);
-#endif
-   return pictfmt->type == PictTypeDirect && pictfmt->direct.alphaMask;
-}
-
-/*
  * Regions
  */
 
===================================================================
RCS file: /cvs/e/e16/e/src/ecompmgr.h,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -3 -r1.29 -r1.30
--- ecompmgr.h  22 Apr 2006 13:57:54 -0000      1.29
+++ ecompmgr.h  1 Jun 2006 20:18:40 -0000       1.30
@@ -36,8 +36,6 @@
    int                 fade_speed;
 } cfg_composite;
 
-int                 EVisualIsARGB(Visual * vis);
-
 int                 ECompMgrIsActive(void);
 
 int                 ECompMgrDeskConfigure(Desk * dsk);
@@ -66,8 +64,6 @@
 void                ECompMgrRepaint(void);
 
 #else
-
-#define EVisualIsARGB(vis)          0
 
 #define ECompMgrIsActive()          0
 
===================================================================
RCS file: /cvs/e/e16/e/src/ewins.c,v
retrieving revision 1.165
retrieving revision 1.166
diff -u -3 -r1.165 -r1.166
--- ewins.c     21 May 2006 12:17:57 -0000      1.165
+++ ewins.c     1 Jun 2006 20:18:40 -0000       1.166
@@ -181,7 +181,6 @@
 {
    XSetWindowAttributes att;
    Win                 frame;
-   XWindowAttributes   win_attr;
 
    if (ewin->client.w <= 0)
       ewin->client.w = 100;
@@ -191,8 +190,11 @@
    if (ewin->state.docked)
       ewin->inh_wm.b.border = 1;
 
+#if USE_COMPOSITE
    if (EVisualIsARGB(WinGetVisual(_EwinGetClientWin(ewin))))
      {
+       XWindowAttributes   win_attr;
+
        ewin->o.argb = 1;
 
        EGetWindowAttributes(_EwinGetClientWin(ewin), &win_attr);
@@ -204,6 +206,7 @@
                               0, &win_attr);
      }
    else
+#endif
      {
        frame =
           ECreateWindow(VRoot.win, ewin->client.x, ewin->client.y,
===================================================================
RCS file: /cvs/e/e16/e/src/x.c,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -3 -r1.143 -r1.144
--- x.c 24 May 2006 16:36:47 -0000      1.143
+++ x.c 1 Jun 2006 20:18:40 -0000       1.144
@@ -29,6 +29,9 @@
 #include <X11/Xatom.h>
 #include <X11/Xutil.h>
 #include <X11/Xresource.h>
+#if USE_COMPOSITE
+#include <X11/extensions/Xrender.h>
+#endif
 
 #define DEBUG_XWIN 0
 
@@ -1508,50 +1511,9 @@
    return mask;
 }
 
-void
-EGrabServer(void)
-{
-   if (Mode.grabs.server_grabbed <= 0)
-     {
-       if (EventDebug(EDBUG_TYPE_GRABS))
-          Eprintf("EGrabServer\n");
-       XGrabServer(disp);
-     }
-   Mode.grabs.server_grabbed++;
-}
-
-void
-EUngrabServer(void)
-{
-   if (Mode.grabs.server_grabbed == 1)
-     {
-       XUngrabServer(disp);
-       XFlush(disp);
-       if (EventDebug(EDBUG_TYPE_GRABS))
-          Eprintf("EUngrabServer\n");
-     }
-   Mode.grabs.server_grabbed--;
-   if (Mode.grabs.server_grabbed < 0)
-      Mode.grabs.server_grabbed = 0;
-}
-
-int
-EServerIsGrabbed(void)
-{
-   return Mode.grabs.server_grabbed;
-}
-
-void
-EFlush(void)
-{
-   XFlush(disp);
-}
-
-void
-ESync(void)
-{
-   XSync(disp, False);
-}
+/*
+ * Display
+ */
 
 Display            *
 EDisplayOpen(const char *dstr, int scr)
@@ -1614,6 +1576,113 @@
 
    disp = NULL;
 }
+
+/*
+ * Server
+ */
+
+void
+EGrabServer(void)
+{
+   if (Mode.grabs.server_grabbed <= 0)
+     {
+       if (EventDebug(EDBUG_TYPE_GRABS))
+          Eprintf("EGrabServer\n");
+       XGrabServer(disp);
+     }
+   Mode.grabs.server_grabbed++;
+}
+
+void
+EUngrabServer(void)
+{
+   if (Mode.grabs.server_grabbed == 1)
+     {
+       XUngrabServer(disp);
+       XFlush(disp);
+       if (EventDebug(EDBUG_TYPE_GRABS))
+          Eprintf("EUngrabServer\n");
+     }
+   Mode.grabs.server_grabbed--;
+   if (Mode.grabs.server_grabbed < 0)
+      Mode.grabs.server_grabbed = 0;
+}
+
+int
+EServerIsGrabbed(void)
+{
+   return Mode.grabs.server_grabbed;
+}
+
+void
+EFlush(void)
+{
+   XFlush(disp);
+}
+
+void
+ESync(void)
+{
+   XSync(disp, False);
+}
+
+/*
+ * Visuals
+ */
+
+#if USE_COMPOSITE
+
+Visual             *
+EVisualFindARGB(void)
+{
+   XVisualInfo        *xvi, xvit;
+   int                 i, num;
+   Visual             *vis;
+
+   xvit.screen = VRoot.scr;
+   xvit.depth = 32;
+   xvit.class = TrueColor;
+
+   xvi = XGetVisualInfo(disp,
+                       VisualScreenMask | VisualDepthMask | VisualClassMask,
+                       &xvit, &num);
+   if (!xvi)
+      return NULL;
+
+   for (i = 0; i < num; i++)
+     {
+       if (EVisualIsARGB(xvi[i].visual))
+          break;
+     }
+
+   vis = (i < num) ? xvi[i].visual : NULL;
+
+   XFree(xvi);
+
+   return vis;
+}
+
+int
+EVisualIsARGB(Visual * vis)
+{
+   XRenderPictFormat  *pictfmt;
+
+   pictfmt = XRenderFindVisualFormat(disp, vis);
+   if (!pictfmt)
+      return 0;
+
+#if 0
+   Eprintf("Visual ID=%#lx Type=%d, alphamask=%d\n", vis->visualid,
+          pictfmt->type, pictfmt->direct.alphaMask);
+#endif
+   return pictfmt->type == PictTypeDirect && pictfmt->direct.alphaMask;
+}
+
+#endif
+
+/*
+ * Misc
+ */
 
 Time
 EGetTimestamp(void)
===================================================================
RCS file: /cvs/e/e16/e/src/xwin.h,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -3 -r1.21 -r1.22
--- xwin.h      21 May 2006 18:44:18 -0000      1.21
+++ xwin.h      1 Jun 2006 20:18:40 -0000       1.22
@@ -28,6 +28,23 @@
 
 #define NoWin ((Win)0)
 
+Display            *EDisplayOpen(const char *dstr, int scr);
+void                EDisplayClose(void);
+void                EDisplayDisconnect(void);
+
+void                EGrabServer(void);
+void                EUngrabServer(void);
+int                 EServerIsGrabbed(void);
+void                EFlush(void);
+void                ESync(void);
+
+#if USE_COMPOSITE
+int                 EVisualIsARGB(Visual * vis);
+Visual             *EVisualFindARGB(void);
+#endif
+
+Time                EGetTimestamp(void);
+
 Win                 ELookupXwin(Window xwin);
 
 #define Xwin(win) WinGetXwin(win)
@@ -39,16 +56,6 @@
 
 Win                 ECreateWinFromXwin(Window xwin);
 void                EDestroyWin(Win win);
-
-Display            *EDisplayOpen(const char *dstr, int scr);
-void                EDisplayClose(void);
-void                EDisplayDisconnect(void);
-void                EGrabServer(void);
-void                EUngrabServer(void);
-int                 EServerIsGrabbed(void);
-void                EFlush(void);
-void                ESync(void);
-Time                EGetTimestamp(void);
 
 Win                 ERegisterWindow(Window xwin, XWindowAttributes * pxwa);
 void                EUnregisterWindow(Win win);




_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to