Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
      Tag: branch-exp
        E.h emodule.h events.c ewins.c setup.c 


Log Message:
Hooks...
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.314.2.40
retrieving revision 1.314.2.41
diff -u -3 -r1.314.2.40 -r1.314.2.41
--- E.h 7 Sep 2004 20:06:52 -0000       1.314.2.40
+++ E.h 17 Sep 2004 14:28:33 -0000      1.314.2.41
@@ -46,12 +46,17 @@
 #include <X11/Xlocale.h>
 #include <X11/extensions/shape.h>
 #include <X11/extensions/XShm.h>
+
 #ifdef HAS_XRANDR
 #ifdef HAVE_X11_EXTENSIONS_XRANDR_H
 #define USE_XRANDR 1
 #endif
 #endif
 
+#ifdef HAS_COMPOSITE
+#define USE_COMPOSITE 1
+#endif
+
 #include <Imlib2.h>
 
 #define EAllocColor(pxc) \
@@ -877,6 +882,7 @@
    void                (*MoveResize) (EWin * ewin, int resize);
    void                (*Refresh) (EWin * ewin);
    void                (*Close) (EWin * ewin);
+   void               *cmhook;
 };
 
 typedef struct _groupconfig
@@ -1667,6 +1673,7 @@
 /* Re-mapped X-events */
 #define EX_EVENT_SHAPE_NOTIFY            64
 #define EX_EVENT_SCREEN_CHANGE_NOTIFY    65
+#define EX_EVENT_DAMAGE_NOTIFY           66
 
 #define ENABLE_DEBUG_EVENTS 1
 #if ENABLE_DEBUG_EVENTS
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/emodule.h,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -3 -r1.1.2.6 -r1.1.2.7
--- emodule.h   5 Sep 2004 11:46:44 -0000       1.1.2.6
+++ emodule.h   17 Sep 2004 14:28:34 -0000      1.1.2.7
@@ -51,6 +51,7 @@
    ESIGNAL_CONFIGURE,
    ESIGNAL_START,
    ESIGNAL_EXIT,
+   ESIGNAL_IDLE,
    ESIGNAL_AREA_CONFIGURED,
    ESIGNAL_AREA_SWITCH_START,
    ESIGNAL_AREA_SWITCH_DONE,
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/events.c,v
retrieving revision 1.69.2.10
retrieving revision 1.69.2.11
diff -u -3 -r1.69.2.10 -r1.69.2.11
--- events.c    7 Sep 2004 20:06:54 -0000       1.69.2.10
+++ events.c    17 Sep 2004 14:28:34 -0000      1.69.2.11
@@ -26,6 +26,12 @@
 #ifdef USE_XRANDR
 #include <X11/extensions/Xrandr.h>
 #endif
+#ifdef USE_COMPOSITE
+#include <X11/extensions/Xcomposite.h>
+#include <X11/extensions/Xdamage.h>
+#include <X11/extensions/Xfixes.h>
+#include <X11/extensions/Xrender.h>
+#endif
 
 #if ENABLE_DEBUG_EVENTS
 static const char  *EventName(unsigned int type);
@@ -39,10 +45,31 @@
 static int          error_base_randr = 0;
 #endif
 
+#ifdef USE_COMPOSITE
+static int          event_base_comp = 0;
+static int          error_base_comp = 0;
+static int          event_base_damage = 0;
+static int          error_base_damage = 0;
+static int          event_base_fixes = 0;
+static int          error_base_fixes = 0;
+static int          event_base_render = 0;
+static int          error_base_render = 0;
+#endif
+
 char                throw_move_events_away = 0;
 
 #define DOUBLE_CLICK_TIME 250  /* Milliseconds */
 
+static void
+EventsExtensionShowInfo(const char *name, int major, int minor,
+                       int event_base, int error_base)
+{
+   if (Mode.debug)
+      Eprintf("Found extension %-8s version %d.%d -"
+             " Event/error base = %d/%d\n", name,
+             major, minor, event_base, error_base);
+}
+
 void
 EventsInit(void)
 {
@@ -52,10 +79,8 @@
    if (XShapeQueryExtension(disp, &event_base_shape, &error_base_shape))
      {
        XShapeQueryVersion(disp, &major, &minor);
-       if (Mode.debug)
-          Eprintf("Found extension Shape version %d.%d -"
-                  " Event/error base = %d/%d\n",
-                  major, minor, event_base_shape, error_base_shape);
+       EventsExtensionShowInfo("Shape", major, minor,
+                               event_base_shape, error_base_shape);
      }
    else
      {
@@ -73,15 +98,43 @@
    if (XRRQueryExtension(disp, &event_base_randr, &error_base_randr))
      {
        XRRQueryVersion(disp, &major, &minor);
-       if (Mode.debug)
-          Eprintf("Found extension RandR version %d.%d -"
-                  " Event/error base = %d/%d\n",
-                  major, minor, event_base_randr, error_base_randr);
+       EventsExtensionShowInfo("RandR", major, minor,
+                               event_base_randr, error_base_randr);
 
        /* Listen for RandR events */
        XRRSelectInput(disp, VRoot.win, RRScreenChangeNotifyMask);
      }
 #endif
+
+#ifdef USE_COMPOSITE
+   if (XCompositeQueryExtension(disp, &event_base_comp, &error_base_comp))
+     {
+       XCompositeQueryVersion(disp, &major, &minor);
+       EventsExtensionShowInfo("Composite", major, minor,
+                               event_base_comp, error_base_comp);
+     }
+
+   if (XDamageQueryExtension(disp, &event_base_damage, &error_base_damage))
+     {
+       XDamageQueryVersion(disp, &major, &minor);
+       EventsExtensionShowInfo("Damage", major, minor,
+                               event_base_damage, error_base_damage);
+     }
+
+   if (XFixesQueryExtension(disp, &event_base_fixes, &error_base_fixes))
+     {
+       XFixesQueryVersion(disp, &major, &minor);
+       EventsExtensionShowInfo("Fixes", major, minor,
+                               event_base_fixes, error_base_fixes);
+     }
+
+   if (XRenderQueryExtension(disp, &event_base_render, &error_base_render))
+     {
+       XRenderQueryVersion(disp, &major, &minor);
+       EventsExtensionShowInfo("Render", major, minor,
+                               event_base_render, error_base_render);
+     }
+#endif
 }
 
 static void
@@ -253,6 +306,10 @@
                      rrev->width, rrev->height, rrev->mwidth, rrev->mheight);
          }
 #endif
+#ifdef USE_COMPOSITE
+       else if (ev->type == event_base_damage + XDamageNotify)
+          ev->type = EX_EVENT_DAMAGE_NOTIFY;
+#endif
        break;
      }
 
@@ -557,6 +614,8 @@
        && (((smfd >= 0) && (!(FD_ISSET(smfd, &fdset)))) || (smfd < 0)))
       HandleTimerEvent();
 
+   ModulesSignal(ESIGNAL_IDLE, NULL);
+
    DBUG_STACKCHECK;
 
    EDBUG_RETURN_;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/ewins.c,v
retrieving revision 1.1.2.12
retrieving revision 1.1.2.13
diff -u -3 -r1.1.2.12 -r1.1.2.13
--- ewins.c     31 Aug 2004 23:25:27 -0000      1.1.2.12
+++ ewins.c     17 Sep 2004 14:28:34 -0000      1.1.2.13
@@ -136,6 +136,8 @@
    ERegisterWindow(disp, ewin->client.win);
    EventCallbackRegister(ewin->client.win, 0, EwinHandleEventsClient, ewin);
 
+   ModulesSignal(ESIGNAL_EWIN_CREATE, ewin);
+
    EDBUG_RETURN(ewin);
 }
 
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/setup.c,v
retrieving revision 1.139.2.13
retrieving revision 1.139.2.14
diff -u -3 -r1.139.2.13 -r1.139.2.14
--- setup.c     9 Sep 2004 19:16:18 -0000       1.139.2.13
+++ setup.c     17 Sep 2004 14:28:34 -0000      1.139.2.14
@@ -243,7 +243,7 @@
                                  CWOverrideRedirect | CWSaveUnder |
                                  CWBackingStore | CWColormap | CWBackPixel |
                                  CWBorderPixel, &attr);
-       ERegisterWindow(disp, VRoot.win);
+       ERegisterWindow(disp, VRoot.win);
 
        xtp.encoding = XA_STRING;
        xtp.format = 8;




-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to