Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        E.h borders.c desktops.c focus.c 


Log Message:
Shuffle around some window event configuration code (no functional changes).
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.247
retrieving revision 1.248
diff -u -3 -r1.247 -r1.248
--- E.h 12 Apr 2004 08:28:32 -0000      1.247
+++ E.h 12 Apr 2004 13:57:42 -0000      1.248
@@ -1747,6 +1747,8 @@
 void                EwinChangesStart(EWin * ewin);
 void                EwinChangesProcess(EWin * ewin);
 
+void                EwinsEventsConfigure(int mode);
+
 int                 BordersEventExpose(XEvent * ev);
 int                 BordersEventMouseDown(XEvent * ev);
 int                 BordersEventMouseUp(XEvent * ev);
@@ -1871,6 +1873,7 @@
 void                MoveEwinToDesktopAt(EWin * ewin, int num, int x, int y);
 void                GotoDesktopByEwin(EWin * ewin);
 void                FloatEwinAboveDesktops(EWin * ewin);
+void                DesktopsEventsConfigure(int mode);
 
 /* dialog.c */
 Dialog             *DialogCreate(const char *name);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/borders.c,v
retrieving revision 1.166
retrieving revision 1.167
diff -u -3 -r1.166 -r1.167
--- borders.c   10 Apr 2004 10:47:14 -0000      1.166
+++ borders.c   12 Apr 2004 13:57:42 -0000      1.167
@@ -3167,6 +3167,115 @@
    EWinChanges.flags = 0;
 }
 
+static void
+EwinEventsConfigure(EWin * ewin, int mode)
+{
+   int                 i;
+
+   if (mode)
+     {
+       XSelectInput(disp, ewin->win,
+                    SubstructureNotifyMask | SubstructureRedirectMask |
+                    PropertyChangeMask | ResizeRedirectMask);
+
+       if (ewin->pager)
+         {
+#if 0                          /* ??? */
+            XSelectInput(disp, ewin->client.win,
+                         PropertyChangeMask | FocusChangeMask |
+                         ResizeRedirectMask | StructureNotifyMask |
+                         ColormapChangeMask | ButtonPressMask |
+                         ButtonReleaseMask | PointerMotionMask);
+#endif
+         }
+       else if (ewin->dialog)
+          XSelectInput(disp, ewin->client.win,
+                       PropertyChangeMask | FocusChangeMask |
+                       ResizeRedirectMask | StructureNotifyMask |
+                       ColormapChangeMask | ExposureMask | KeyPressMask);
+       else
+          XSelectInput(disp, ewin->client.win,
+                       PropertyChangeMask | FocusChangeMask |
+                       ResizeRedirectMask | StructureNotifyMask |
+                       ColormapChangeMask);
+
+       for (i = 0; i < ewin->border->num_winparts; i++)
+         {
+            if (ewin->border->part[i].flags & FLAG_TITLE)
+               XSelectInput(disp, ewin->bits[i].win,
+                            ExposureMask | ButtonPressMask |
+                            ButtonReleaseMask);
+            else
+               XSelectInput(disp, ewin->bits[i].win,
+                            ButtonPressMask | ButtonReleaseMask);
+         }
+     }
+   else
+     {
+       XSelectInput(disp, ewin->win,
+                    SubstructureNotifyMask | SubstructureRedirectMask |
+                    EnterWindowMask | LeaveWindowMask | PointerMotionMask
+                    | PropertyChangeMask | ResizeRedirectMask |
+                    ButtonPressMask | ButtonReleaseMask);
+
+       if (ewin->pager)
+          XSelectInput(disp, ewin->client.win,
+                       PropertyChangeMask | EnterWindowMask |
+                       LeaveWindowMask | FocusChangeMask |
+                       ResizeRedirectMask | StructureNotifyMask |
+                       ColormapChangeMask | ButtonPressMask |
+                       ButtonReleaseMask | PointerMotionMask);
+       else if (ewin->dialog)
+          XSelectInput(disp, ewin->client.win,
+                       PropertyChangeMask | EnterWindowMask |
+                       LeaveWindowMask | FocusChangeMask |
+                       ResizeRedirectMask | StructureNotifyMask |
+                       ColormapChangeMask | ExposureMask | KeyPressMask);
+       else
+          XSelectInput(disp, ewin->client.win,
+                       PropertyChangeMask | EnterWindowMask |
+                       LeaveWindowMask | FocusChangeMask |
+                       ResizeRedirectMask | StructureNotifyMask |
+                       ColormapChangeMask);
+
+       for (i = 0; i < ewin->border->num_winparts; i++)
+         {
+            if (ewin->border->part[i].flags & FLAG_TITLE)
+               XSelectInput(disp, ewin->bits[i].win,
+                            ExposureMask | KeyPressMask | KeyReleaseMask |
+                            ButtonPressMask | ButtonReleaseMask |
+                            EnterWindowMask | LeaveWindowMask |
+                            PointerMotionMask);
+            else
+               XSelectInput(disp, ewin->bits[i].win,
+                            KeyPressMask | KeyReleaseMask |
+                            ButtonPressMask | ButtonReleaseMask |
+                            EnterWindowMask | LeaveWindowMask |
+                            PointerMotionMask);
+         }
+     }
+}
+
+void
+EwinsEventsConfigure(int mode)
+{
+   EWin               *const *lst, *ewin;
+   int                 i, num;
+
+   lst = EwinListGetAll(&num);
+   for (i = 0; i < num; i++)
+     {
+       ewin = lst[i];
+
+       EwinEventsConfigure(lst[i], mode);
+
+       /* This is a hack. Maybe we should do something with expose events. */
+       if (mode == 0)
+          if (Mode.mode == MODE_DESKSWITCH && ewin->sticky && ewin->visible)
+             EwinRefresh(ewin);
+     }
+}
+
 /*
  * Border event handlers
  */
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/desktops.c,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -3 -r1.83 -r1.84
--- desktops.c  12 Apr 2004 08:28:32 -0000      1.83
+++ desktops.c  12 Apr 2004 13:57:43 -0000      1.84
@@ -1281,3 +1281,25 @@
    EDBUG_RETURN_;
 }
 #endif
+
+void
+DesktopsEventsConfigure(int mode)
+{
+   int                 i;
+   long                event_mask;
+
+   if (mode)
+      event_mask =
+        PropertyChangeMask | SubstructureRedirectMask |
+        ButtonPressMask | ButtonReleaseMask;
+   else
+      event_mask =
+        SubstructureNotifyMask | ButtonPressMask |
+        ButtonReleaseMask | EnterWindowMask | LeaveWindowMask |
+        ButtonMotionMask | PropertyChangeMask |
+        SubstructureRedirectMask | KeyPressMask | KeyReleaseMask
+        | PointerMotionMask;
+
+   for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
+      XSelectInput(disp, desks.desk[i].win, event_mask);
+}
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/focus.c,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -3 -r1.66 -r1.67
--- focus.c     10 Apr 2004 07:22:45 -0000      1.66
+++ focus.c     12 Apr 2004 13:57:43 -0000      1.67
@@ -336,9 +336,6 @@
 void
 FocusNewDeskBegin(void)
 {
-   EWin               *const *lst, *ewin;
-   int                 i, j, num;
-
    if (new_desk_focus_nesting++)
       return;
 
@@ -346,60 +343,14 @@
 
    /* we are about to flip desktops or areas - disable enter and leave events
     * temporarily */
-
-   lst = EwinListGetAll(&num);
-   for (i = 0; i < num; i++)
-     {
-       ewin = lst[i];
-
-       XSelectInput(disp, ewin->win,
-                    SubstructureNotifyMask | SubstructureRedirectMask |
-                    PropertyChangeMask | ResizeRedirectMask);
-
-       if (ewin->pager)
-         {
-#if 0                          /* ??? */
-            XSelectInput(disp, ewin->client.win,
-                         PropertyChangeMask | FocusChangeMask |
-                         ResizeRedirectMask | StructureNotifyMask |
-                         ColormapChangeMask | ButtonPressMask |
-                         ButtonReleaseMask | PointerMotionMask);
-#endif
-         }
-       else if (ewin->dialog)
-          XSelectInput(disp, ewin->client.win,
-                       PropertyChangeMask | FocusChangeMask |
-                       ResizeRedirectMask | StructureNotifyMask |
-                       ColormapChangeMask | ExposureMask | KeyPressMask);
-       else
-          XSelectInput(disp, ewin->client.win,
-                       PropertyChangeMask | FocusChangeMask |
-                       ResizeRedirectMask | StructureNotifyMask |
-                       ColormapChangeMask);
-
-       for (j = 0; j < ewin->border->num_winparts; j++)
-         {
-            if (ewin->border->part[j].flags & FLAG_TITLE)
-               XSelectInput(disp, ewin->bits[j].win,
-                            ExposureMask | ButtonPressMask |
-                            ButtonReleaseMask);
-            else
-               XSelectInput(disp, ewin->bits[j].win,
-                            ButtonPressMask | ButtonReleaseMask);
-         }
-     }
-
-   for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
-      XSelectInput(disp, desks.desk[i].win,
-                  PropertyChangeMask | SubstructureRedirectMask |
-                  ButtonPressMask | ButtonReleaseMask);
+   EwinsEventsConfigure(1);
+   DesktopsEventsConfigure(1);
 }
 
 void
 FocusNewDesk(void)
 {
-   EWin               *const *lst, *ewin;
-   int                 i, j, num;
+   EWin               *ewin;
 
    EDBUG(4, "FocusNewDesk");
 
@@ -407,64 +358,8 @@
       return;
 
    /* we flipped - re-enable enter and leave events */
-   lst = EwinListGetAll(&num);
-   for (i = 0; i < num; i++)
-     {
-       ewin = lst[i];
-
-       XSelectInput(disp, ewin->win,
-                    SubstructureNotifyMask | SubstructureRedirectMask |
-                    EnterWindowMask | LeaveWindowMask | PointerMotionMask |
-                    PropertyChangeMask | ResizeRedirectMask |
-                    ButtonPressMask | ButtonReleaseMask);
-
-       if (ewin->pager)
-          XSelectInput(disp, ewin->client.win,
-                       PropertyChangeMask | EnterWindowMask |
-                       LeaveWindowMask | FocusChangeMask |
-                       ResizeRedirectMask | StructureNotifyMask |
-                       ColormapChangeMask | ButtonPressMask |
-                       ButtonReleaseMask | PointerMotionMask);
-       else if (ewin->dialog)
-          XSelectInput(disp, ewin->client.win,
-                       PropertyChangeMask | EnterWindowMask |
-                       LeaveWindowMask | FocusChangeMask |
-                       ResizeRedirectMask | StructureNotifyMask |
-                       ColormapChangeMask | ExposureMask | KeyPressMask);
-       else
-          XSelectInput(disp, ewin->client.win,
-                       PropertyChangeMask | EnterWindowMask |
-                       LeaveWindowMask | FocusChangeMask |
-                       ResizeRedirectMask | StructureNotifyMask |
-                       ColormapChangeMask);
-
-       for (j = 0; j < ewin->border->num_winparts; j++)
-         {
-            if (ewin->border->part[j].flags & FLAG_TITLE)
-               XSelectInput(disp, ewin->bits[j].win,
-                            ExposureMask | KeyPressMask | KeyReleaseMask |
-                            ButtonPressMask | ButtonReleaseMask |
-                            EnterWindowMask | LeaveWindowMask |
-                            PointerMotionMask);
-            else
-               XSelectInput(disp, ewin->bits[j].win,
-                            KeyPressMask | KeyReleaseMask |
-                            ButtonPressMask | ButtonReleaseMask |
-                            EnterWindowMask | LeaveWindowMask |
-                            PointerMotionMask);
-         }
-
-       if (Mode.mode == MODE_DESKSWITCH && ewin->sticky && ewin->visible)
-          EwinRefresh(ewin);
-     }
-
-   for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
-      XSelectInput(disp, desks.desk[i].win,
-                  SubstructureNotifyMask | ButtonPressMask |
-                  ButtonReleaseMask | EnterWindowMask | LeaveWindowMask |
-                  ButtonMotionMask | PropertyChangeMask |
-                  SubstructureRedirectMask | KeyPressMask | KeyReleaseMask |
-                  PointerMotionMask);
+   EwinsEventsConfigure(0);
+   DesktopsEventsConfigure(0);
 
    /* Set the mouse-over window */
    ewin = GetEwinByCurrentPointer();




-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to