Enlightenment CVS committal
Author : kwo
Project : e16
Module : e
Dir : e16/e/src
Modified Files:
evhandlers.c focus.c grabs.c
Log Message:
Still more pointer grab stuff.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/evhandlers.c,v
retrieving revision 1.176
retrieving revision 1.177
diff -u -3 -r1.176 -r1.177
--- evhandlers.c 31 Aug 2004 17:24:40 -0000 1.176
+++ evhandlers.c 27 Nov 2004 13:29:39 -0000 1.177
@@ -552,6 +552,14 @@
EDBUG(5, "HandleMouseIn");
+ if (ev->xcrossing.mode == NotifyGrab &&
+ ev->xcrossing.detail == NotifyInferior)
+ {
+ Mode.grabs.pointer_grab_window = win;
+ if (!Mode.grabs.pointer_grab_active)
+ Mode.grabs.pointer_grab_active = 2;
+ }
+
if (Mode.mode != MODE_NONE)
EDBUG_RETURN_;
@@ -591,6 +599,13 @@
EDBUG(5, "HandleMouseOut");
+ if (ev->xcrossing.mode == NotifyGrab &&
+ ev->xcrossing.detail == NotifyInferior)
+ {
+ Mode.grabs.pointer_grab_window = None;
+ Mode.grabs.pointer_grab_active = 0;
+ }
+
if (Mode.mode != MODE_NONE)
EDBUG_RETURN_;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/focus.c,v
retrieving revision 1.84
retrieving revision 1.85
diff -u -3 -r1.84 -r1.85
--- focus.c 14 Aug 2004 18:50:27 -0000 1.84
+++ focus.c 27 Nov 2004 13:29:39 -0000 1.85
@@ -470,6 +470,8 @@
FocusToEWin(ewin, FOCUS_CLICK);
/* allow click to pass thorugh */
+ if (EventDebug(EDBUG_TYPE_GRABS))
+ Eprintf("FocusHandleClick %#lx %#lx\n", win, ewin->win_container);
if (win == ewin->win_container)
{
XSync(disp, False);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/grabs.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- grabs.c 20 Nov 2004 17:55:12 -0000 1.20
+++ grabs.c 27 Nov 2004 13:29:39 -0000 1.21
@@ -95,9 +95,6 @@
int ret = -1;
Window confine_to = (confine) ? win : None;
- if (Mode.grabs.pointer_grab_active)
- goto done;
-
ret = XGrabPointer(disp, win, True,
ButtonPressMask | ButtonReleaseMask | PointerMotionMask |
ButtonMotionMask | EnterWindowMask | LeaveWindowMask,
@@ -107,7 +104,6 @@
Mode.grabs.pointer_grab_window = win;
Mode.grabs.pointer_grab_active = 1;
- done:
if (EventDebug(EDBUG_TYPE_GRABS))
Eprintf("GrabPointerSet: %#lx, ret=%d\n", Mode.grabs.pointer_grab_window,
ret);
@@ -118,12 +114,8 @@
void
GrabPointerRelease(void)
{
- if (!Mode.grabs.pointer_grab_active)
- goto done;
-
XUngrabPointer(disp, CurrentTime);
- done:
if (EventDebug(EDBUG_TYPE_GRABS))
Eprintf("GrabPointerRelease: %#lx\n", Mode.grabs.pointer_grab_window);
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs