Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
        E.h actions.c borders.c buttons.c evhandlers.c focus.c grabs.c 
        ipc.c moveresize.c pager.c session.c 


Log Message:
Pass button grabs through one function.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.320
retrieving revision 1.321
diff -u -3 -r1.320 -r1.321
--- E.h 14 Aug 2004 00:47:17 -0000      1.320
+++ E.h 14 Aug 2004 15:06:26 -0000      1.321
@@ -2176,10 +2176,14 @@
 /* grabs.c */
 void                GrabActionKey(Action * a);
 void                UnGrabActionKey(Action * a);
-void                GrabTheButtons(Window win);
-int                 GrabThePointer(Window win, int csr);
-int                 GrabConfineThePointer(Window win, int csr);
-void                UnGrabTheButtons(void);
+void                GrabButtonsSet(Window win, unsigned int csr);
+int                 GrabPointerSet(Window win, unsigned int csr, int confine);
+void                GrabPointerRelease(void);
+void                GrabButtonSet(unsigned int button, unsigned int modifiers,
+                                 Window window, unsigned int event_mask,
+                                 unsigned int csr, int confine);
+void                GrabButtonRelease(unsigned int button,
+                                     unsigned int modifiers, Window win);
 
 /* groups.c */
 void                CopyGroupConfig(GroupConfig * src, GroupConfig * dest);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/actions.c,v
retrieving revision 1.176
retrieving revision 1.177
diff -u -3 -r1.176 -r1.177
--- actions.c   14 Aug 2004 00:47:17 -0000      1.176
+++ actions.c   14 Aug 2004 15:06:26 -0000      1.177
@@ -79,7 +79,6 @@
    ActionClass        *ac;
    int                 j;
    Action             *a;
-   Window              pager_hi_win;
    unsigned int        mod, button, mask;
 
    ac = (ActionClass *) FindItem("BUTTONBINDINGS", 0, LIST_FINDBY_NAME,
@@ -88,7 +87,6 @@
    if (!ac)
       return;
 
-   pager_hi_win = PagerGetHiWin(ewin->pager);
    ac->ref_count++;
    for (j = 0; j < ac->num; j++)
      {
@@ -114,15 +112,7 @@
 
        if (mod == AnyModifier)
          {
-#if 0                          /* Why? */
-            if (pager_hi_win)
-               XGrabButton(disp, button, mod, pager_hi_win,
-                           False, mask, GrabModeSync, GrabModeAsync,
-                           None, None);
-#endif
-            XGrabButton(disp, button, mod, ewin->win, False, mask,
-                        GrabModeSync, GrabModeAsync,
-                        ewin->win, ECsrGet(ECSR_PGRAB));
+            GrabButtonSet(button, mod, ewin->win, mask, ECSR_PGRAB, 1);
          }
        else
          {
@@ -130,17 +120,8 @@
 
             for (i = 0; i < 8; i++)
               {
-#if 0                          /* Why? */
-                 if (pager_hi_win)
-                    XGrabButton(disp, button,
-                                mod | mask_mod_combos[i],
-                                pager_hi_win, False, mask,
-                                GrabModeSync, GrabModeAsync, None, None);
-#endif
-                 XGrabButton(disp, button, mod | mask_mod_combos[i],
-                             ewin->win, False, mask,
-                             GrabModeSync, GrabModeAsync,
-                             ewin->win, ECsrGet(ECSR_PGRAB));
+                 GrabButtonSet(button, mod | mask_mod_combos[i], ewin->win,
+                               mask, ECSR_PGRAB, 1);
               }
          }
      }
@@ -152,7 +133,6 @@
    ActionClass        *ac;
    int                 j;
    Action             *a;
-   Window              pager_hi_win;
    unsigned int        mod, button;
 
    ac = (ActionClass *) FindItem("BUTTONBINDINGS", 0, LIST_FINDBY_NAME,
@@ -161,7 +141,6 @@
    if (!ac)
       return;
 
-   pager_hi_win = PagerGetHiWin(ewin->pager);
    ac->ref_count--;
    for (j = 0; j < ac->num; j++)
      {
@@ -185,9 +164,7 @@
 
        if (mod == AnyModifier)
          {
-            if (pager_hi_win)
-               XUngrabButton(disp, button, mod, pager_hi_win);
-            XUngrabButton(disp, button, mod, ewin->win);
+            GrabButtonRelease(button, mod, ewin->win);
          }
        else
          {
@@ -195,11 +172,8 @@
 
             for (i = 0; i < 8; i++)
               {
-                 if (pager_hi_win)
-                    XUngrabButton(disp, button,
-                                  mod | mask_mod_combos[i], pager_hi_win);
-                 XUngrabButton(disp, button,
-                               mod | mask_mod_combos[i], ewin->win);
+                 GrabButtonRelease(button, mod | mask_mod_combos[i],
+                                   ewin->win);
               }
          }
      }
@@ -1718,7 +1692,7 @@
        EDBUG_RETURN(0);
      }
 
-   GrabThePointer(VRoot.win, ECSR_GRAB);
+   GrabPointerSet(VRoot.win, ECSR_GRAB, 0);
    Mode.mode = MODE_BUTTONDRAG;
    Mode.button_move_pending = 1;
    Mode.start_x = Mode.x;
@@ -1743,7 +1717,7 @@
       EDBUG_RETURN(0);
 
    Mode.mode = MODE_NONE;
-   UnGrabTheButtons();
+   GrabPointerRelease();
    if (!Mode.button_move_pending)
      {
        d = DesktopAt(Mode.x, Mode.y);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/borders.c,v
retrieving revision 1.224
retrieving revision 1.225
diff -u -3 -r1.224 -r1.225
--- borders.c   13 Aug 2004 21:06:34 -0000      1.224
+++ borders.c   14 Aug 2004 15:06:26 -0000      1.225
@@ -493,7 +493,7 @@
    if ((!ewin->client.transient) && (Conf.place.manual)
        && (!ewin->client.already_placed) && (!Mode.wm.startup) && (!Mode.place))
      {
-       cangrab = GrabThePointer(VRoot.win, ECSR_GRAB);
+       cangrab = GrabPointerSet(VRoot.win, ECSR_GRAB, 0);
        if ((cangrab == GrabNotViewable) || (cangrab == AlreadyGrabbed)
            || (cangrab == GrabFrozen))
          {
@@ -526,7 +526,7 @@
             if (ewin->desktop >= 0)
                GotoDesktop(ewin->desktop);
 
-            GrabThePointer(VRoot.win, ECSR_GRAB);
+            GrabPointerSet(VRoot.win, ECSR_GRAB, 0);
             XQueryPointer(disp, VRoot.win, &root_return, &junk, &rx, &ry, &wx,
                           &wy, &mask);
             XUngrabPointer(disp, CurrentTime);
@@ -596,7 +596,7 @@
        MoveEwin(ewin, x, y);
        RaiseEwin(ewin);
        ShowEwin(ewin);
-       GrabThePointer(VRoot.win, ECSR_GRAB);
+       GrabPointerSet(VRoot.win, ECSR_GRAB, 0);
        Mode.have_place_grab = 1;
        Mode.place = 1;
        ICCCM_Configure(ewin);
@@ -3525,7 +3525,7 @@
 static void
 BorderWinpartEventMouseDown(XEvent * ev, EWin * ewin, int j)
 {
-   GrabThePointer(ewin->bits[j].win, ECSR_GRAB);
+   GrabPointerSet(ewin->bits[j].win, ECSR_GRAB, 0);
 
    ewin->bits[j].state = STATE_CLICKED;
    BorderWinpartChange(ewin, j, 0);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/buttons.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -3 -r1.36 -r1.37
--- buttons.c   15 Jul 2004 18:23:53 -0000      1.36
+++ buttons.c   14 Aug 2004 15:06:26 -0000      1.37
@@ -607,7 +607,7 @@
        if ((win != buttons[i]->win) && (win != buttons[i]->event_win))
           continue;
 
-       GrabThePointer(win, ECSR_GRAB);
+       GrabPointerSet(win, ECSR_GRAB, 0);
        if (buttons[i]->inside_win)
          {
             Window              id = ev->xany.window;  /* ??? */
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/evhandlers.c,v
retrieving revision 1.174
retrieving revision 1.175
diff -u -3 -r1.174 -r1.175
--- evhandlers.c        7 Aug 2004 21:00:08 -0000       1.174
+++ evhandlers.c        14 Aug 2004 15:06:26 -0000      1.175
@@ -239,7 +239,7 @@
                                      LIST_TYPE_ACLASS);
        if (ac)
          {
-            GrabThePointer(ewin->win, ECSR_GRAB);
+            GrabPointerSet(ewin->win, ECSR_GRAB, 0);
             if (EventAclass(ev, ewin, ac))
               {
                  goto done;
@@ -273,7 +273,7 @@
      }
 
    TooltipsHandleEvent();
-   UnGrabTheButtons();
+   GrabPointerRelease();
 
    ModeGetXY(ev->xbutton.root, ev->xbutton.x_root, ev->xbutton.y_root);
 
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/focus.c,v
retrieving revision 1.82
retrieving revision 1.83
diff -u -3 -r1.82 -r1.83
--- focus.c     14 Aug 2004 00:47:17 -0000      1.82
+++ focus.c     14 Aug 2004 15:06:26 -0000      1.83
@@ -159,9 +159,8 @@
        ewin->active && Conf.focus.clickraises) ||
        (Conf.focus.mode == MODE_FOCUS_CLICK && !ewin->active))
      {
-       XGrabButton(disp, AnyButton, AnyModifier, ewin->win_container,
-                   False, ButtonPressMask, GrabModeSync, GrabModeAsync,
-                   ewin->win_container, ECsrGet(ECSR_PGRAB));
+       GrabButtonSet(AnyButton, AnyModifier, ewin->win_container,
+                     ButtonPressMask, ECSR_PGRAB, 1);
 #if 0
        Eprintf("FocusEwinSetGrabs: %#lx grab %s\n", ewin->client.win,
                EwinGetTitle(ewin));
@@ -169,7 +168,7 @@
      }
    else
      {
-       XUngrabButton(disp, AnyButton, AnyModifier, ewin->win_container);
+       GrabButtonRelease(AnyButton, AnyModifier, ewin->win_container);
 #if 0
        Eprintf("FocusEwinSetGrabs: %#lx ungrab %s\n", ewin->client.win,
                EwinGetTitle(ewin));
@@ -198,7 +197,7 @@
    for (i = 0; i < num; i++)
      {
        ewin = lst[i];
-       XUngrabButton(disp, AnyButton, AnyModifier, ewin->win_container);
+       GrabButtonRelease(AnyButton, AnyModifier, ewin->win_container);
        FocusEwinSetGrabs(ewin);
      }
 
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/grabs.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -3 -r1.18 -r1.19
--- grabs.c     5 Aug 2004 23:08:34 -0000       1.18
+++ grabs.c     14 Aug 2004 15:06:26 -0000      1.19
@@ -75,64 +75,66 @@
 }
 
 void
-GrabTheButtons(Window win)
+GrabButtonsSet(Window win, unsigned int csr)
 {
-   EDBUG(4, "GrabTheButtons");
    if (Mode.grabs.pointer_grab_active)
-      EDBUG_RETURN_;
+      return;
+
    XGrabPointer(disp, win, True, ButtonPressMask | ButtonReleaseMask,
-               GrabModeAsync, GrabModeAsync, None, None, CurrentTime);
+               GrabModeAsync, GrabModeAsync, None, ECsrGet(csr), CurrentTime);
+
    Mode.grabs.pointer_grab_window = win;
    Mode.grabs.pointer_grab_active = 1;
-   EDBUG_RETURN_;
 }
 
 int
-GrabThePointer(Window win, int csr)
+GrabPointerSet(Window win, unsigned int csr, int confine)
 {
    int                 ret;
+   Window              confine_to = (confine) ? win : None;
 
-   EDBUG(4, "GrabThePointer");
    if (Mode.grabs.pointer_grab_active)
-      EDBUG_RETURN(1);
-   ret =
-      XGrabPointer(disp, win, True,
-                  ButtonPressMask | ButtonReleaseMask | PointerMotionMask |
-                  ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
-                  GrabModeAsync, GrabModeAsync, None, ECsrGet(csr),
-                  CurrentTime);
-   Mode.grabs.pointer_grab_window = win;
-   Mode.grabs.pointer_grab_active = 1;
-   EDBUG_RETURN(ret);
-}
+      return 1;
 
-int
-GrabConfineThePointer(Window win, int csr)
-{
-   int                 ret;
+   ret = XGrabPointer(disp, win, True,
+                     ButtonPressMask | ButtonReleaseMask | PointerMotionMask |
+                     ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
+                     GrabModeAsync, GrabModeAsync, confine_to, ECsrGet(csr),
+                     CurrentTime);
 
-   EDBUG(4, "GrabThePointer");
-   if (Mode.grabs.pointer_grab_active)
-      EDBUG_RETURN(1);
-   ret =
-      XGrabPointer(disp, win, True,
-                  ButtonPressMask | ButtonReleaseMask | PointerMotionMask |
-                  ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
-                  GrabModeAsync, GrabModeAsync, win, ECsrGet(csr),
-                  CurrentTime);
    Mode.grabs.pointer_grab_window = win;
    Mode.grabs.pointer_grab_active = 1;
-   EDBUG_RETURN(ret);
+
+   return ret;
 }
 
 void
-UnGrabTheButtons()
+GrabPointerRelease(void)
 {
-   EDBUG(4, "UnGrabTheButtons");
    if (!Mode.grabs.pointer_grab_active)
-      EDBUG_RETURN_;
+      return;
+
    XUngrabPointer(disp, CurrentTime);
+
    Mode.grabs.pointer_grab_active = 0;
    Mode.grabs.pointer_grab_window = None;
-   EDBUG_RETURN_;
+}
+
+void
+GrabButtonSet(unsigned int button, unsigned int modifiers, Window win,
+             unsigned int event_mask, unsigned int csr, int confine)
+{
+   Bool                owner_events = False;
+   int                 pointer_mode = GrabModeSync;
+   int                 keyboard_mode = GrabModeAsync;
+   Window              confine_to = (confine) ? win : None;
+
+   XGrabButton(disp, button, modifiers, win, owner_events, event_mask,
+              pointer_mode, keyboard_mode, confine_to, ECsrGet(csr));
+}
+
+void
+GrabButtonRelease(unsigned int button, unsigned int modifiers, Window win)
+{
+   XUngrabButton(disp, button, modifiers, win);
 }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ipc.c,v
retrieving revision 1.178
retrieving revision 1.179
diff -u -3 -r1.178 -r1.179
--- ipc.c       14 Aug 2004 00:47:17 -0000      1.178
+++ ipc.c       14 Aug 2004 15:06:26 -0000      1.179
@@ -4448,13 +4448,13 @@
          }
        else if (!strncmp(param, "unset", 2))
          {
-            UnGrabTheButtons();
+            GrabPointerRelease();
             IpcPrintf("Ungrab\n");
          }
        else
          {
             sscanf(param, "%li", &win);
-            GrabConfineThePointer(win, ECSR_ACT_RESIZE);
+            GrabPointerSet(win, ECSR_ACT_RESIZE, 1);
             IpcPrintf("Grab %#lx\n", win);
          }
      }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/moveresize.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- moveresize.c        22 Jul 2004 16:11:43 -0000      1.22
+++ moveresize.c        14 Aug 2004 15:06:26 -0000      1.23
@@ -51,8 +51,8 @@
      }
 
    SoundPlay("SOUND_MOVE_START");
-   UnGrabTheButtons();
-   GrabConfineThePointer(VRoot.win, ECSR_ACT_MOVE);
+   GrabPointerRelease();
+   GrabPointerSet(VRoot.win, ECSR_ACT_MOVE, 1);
 
    Mode.mode = MODE_MOVE_PENDING;
    Mode.constrained = constrained;
@@ -94,7 +94,7 @@
    int                 d, wasresize = 0, num, i;
 
    EDBUG(6, "doMoveEnd");
-   UnGrabTheButtons();
+   GrabPointerRelease();
 
    if (ewin && ewin != mode_moveresize_ewin)
       return 0;
@@ -275,8 +275,8 @@
    Mode.queue_up = 0;
 
    SoundPlay("SOUND_RESIZE_START");
-   UnGrabTheButtons();
-   GrabConfineThePointer(VRoot.win, ECSR_ACT_RESIZE);
+   GrabPointerRelease();
+   GrabPointerSet(VRoot.win, ECSR_ACT_RESIZE, 1);
 
    switch (hv)
      {
@@ -360,7 +360,7 @@
    int                 i;
 
    EDBUG(0, "doResizeEnd");
-   UnGrabTheButtons();
+   GrabPointerRelease();
 
    if (ewin && ewin != mode_moveresize_ewin)
       return 0;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/pager.c,v
retrieving revision 1.105
retrieving revision 1.106
diff -u -3 -r1.105 -r1.106
--- pager.c     8 Aug 2004 21:32:19 -0000       1.105
+++ pager.c     14 Aug 2004 15:06:26 -0000      1.106
@@ -1734,7 +1734,7 @@
             EMoveResizeWindow(disp, p->hi_win, px + wx, py + wy, ww, wh);
             ESetWindowBackgroundPixmap(disp, p->hi_win, ewin->mini_pmm.pmap);
             EMapRaised(disp, p->hi_win);
-            GrabThePointer(p->hi_win, None);
+            GrabPointerSet(p->hi_win, None, 0);
             p->hi_visible = 1;
             p->hi_ewin = ewin;
             p->hi_win_w = ww;
@@ -1879,7 +1879,7 @@
          }
 
        mode_context_pager = NULL;
-       UnGrabTheButtons();
+       GrabPointerRelease();
      }
 
  done:
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/session.c,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -3 -r1.75 -r1.76
--- session.c   30 Jun 2004 13:04:18 -0000      1.75
+++ session.c   14 Aug 2004 15:06:26 -0000      1.76
@@ -1249,7 +1249,8 @@
    if (disp)
      {
        UngrabX();
-       UnGrabTheButtons();
+       GrabPointerRelease();
+       XAllowEvents(disp, AsyncBoth, CurrentTime);
 
        /* This mechanism is only needed when the SM is unavailable: */
        ICCCM_SetEInfoOnAll();




-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to