Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: E.h actions.c borders.c buttons.c cursors.c evhandlers.c grabs.c moveresize.c pager.c Log Message: Enable configuring and set cursor on pointer grabs. =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v retrieving revision 1.306 retrieving revision 1.307 diff -u -3 -r1.306 -r1.307 --- E.h 15 Jul 2004 16:46:04 -0000 1.306 +++ E.h 15 Jul 2004 18:23:37 -0000 1.307 @@ -1910,11 +1910,12 @@ void CoordsHide(void); /* cursors.c */ -#define ECSR_ROOT 0 -#define ECSR_GRAB 1 -#define ECSR_ACT_MOVE 2 -#define ECSR_ACT_RESIZE 3 -#define ECSR_COUNT 4 +#define ECSR_NONE 0 +#define ECSR_ROOT 1 +#define ECSR_GRAB 2 +#define ECSR_ACT_MOVE 3 +#define ECSR_ACT_RESIZE 4 +#define ECSR_COUNT 5 void ECursorsInit(void); ECursor *ECursorCreate(const char *name, const char *image, int native_id, XColor * fg, XColor * bg); @@ -2284,8 +2285,8 @@ void GrabActionKey(Action * a); void UnGrabActionKey(Action * a); void GrabTheButtons(Window win); -int GrabConfineThePointer(Window win); -int GrabThePointer(Window win); +int GrabThePointer(Window win, int csr); +int GrabConfineThePointer(Window win, int csr); void UnGrabTheButtons(void); /* groups.c */ =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/actions.c,v retrieving revision 1.171 retrieving revision 1.172 diff -u -3 -r1.171 -r1.172 --- actions.c 11 Jul 2004 10:58:53 -0000 1.171 +++ actions.c 15 Jul 2004 18:23:53 -0000 1.172 @@ -1710,7 +1710,7 @@ EDBUG_RETURN(0); } - GrabThePointer(VRoot.win); + GrabThePointer(VRoot.win, ECSR_GRAB); Mode.mode = MODE_BUTTONDRAG; Mode.button_move_pending = 1; Mode.start_x = Mode.x; =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/borders.c,v retrieving revision 1.216 retrieving revision 1.217 diff -u -3 -r1.216 -r1.217 --- borders.c 15 Jul 2004 16:46:04 -0000 1.216 +++ borders.c 15 Jul 2004 18:23:53 -0000 1.217 @@ -492,7 +492,7 @@ if ((!ewin->client.transient) && (Conf.place.manual) && (!ewin->client.already_placed) && (!Mode.wm.startup) && (!Mode.place)) { - cangrab = GrabThePointer(VRoot.win); + cangrab = GrabThePointer(VRoot.win, ECSR_GRAB); if ((cangrab == GrabNotViewable) || (cangrab == AlreadyGrabbed) || (cangrab == GrabFrozen)) { @@ -525,7 +525,7 @@ if (ewin->desktop >= 0) GotoDesktop(ewin->desktop); - GrabThePointer(VRoot.win); + GrabThePointer(VRoot.win, ECSR_GRAB); XQueryPointer(disp, VRoot.win, &root_return, &junk, &rx, &ry, &wx, &wy, &mask); XUngrabPointer(disp, CurrentTime); @@ -595,7 +595,7 @@ MoveEwin(ewin, x, y); RaiseEwin(ewin); ShowEwin(ewin); - GrabThePointer(VRoot.win); + GrabThePointer(VRoot.win, ECSR_GRAB); Mode.have_place_grab = 1; Mode.place = 1; ICCCM_Configure(ewin); @@ -3510,7 +3510,7 @@ static void BorderWinpartEventMouseDown(XEvent * ev, EWin * ewin, int j) { - GrabThePointer(ewin->bits[j].win); + GrabThePointer(ewin->bits[j].win, ECSR_GRAB); ewin->bits[j].state = STATE_CLICKED; BorderWinpartChange(ewin, j, 0); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/buttons.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- buttons.c 26 Jun 2004 17:33:40 -0000 1.35 +++ buttons.c 15 Jul 2004 18:23:53 -0000 1.36 @@ -607,7 +607,7 @@ if ((win != buttons[i]->win) && (win != buttons[i]->event_win)) continue; - GrabThePointer(win); + GrabThePointer(win, ECSR_GRAB); if (buttons[i]->inside_win) { Window id = ev->xany.window; /* ??? */ =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/cursors.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- cursors.c 15 Jul 2004 16:46:05 -0000 1.18 +++ cursors.c 15 Jul 2004 18:23:53 -0000 1.19 @@ -124,7 +124,7 @@ ec = FindItem(name, 0, LIST_FINDBY_NAME, LIST_TYPE_ECURSOR); if (!ec) - return fallback; + return XCreateFontCursor(disp, fallback); ECursorIncRefcount(ec); @@ -199,6 +199,7 @@ void ECursorsInit(void) { + ECsrs[ECSR_NONE] = None; ECsrs[ECSR_ROOT] = ECursorGetByName("DEFAULT", XC_arrow); ECsrs[ECSR_GRAB] = ECursorGetByName("GRAB", XC_circle); ECsrs[ECSR_ACT_MOVE] = ECursorGetByName("ACTION_MOVE", XC_X_cursor); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/evhandlers.c,v retrieving revision 1.171 retrieving revision 1.172 diff -u -3 -r1.171 -r1.172 --- evhandlers.c 4 Jul 2004 08:47:27 -0000 1.171 +++ evhandlers.c 15 Jul 2004 18:23:53 -0000 1.172 @@ -239,7 +239,7 @@ LIST_TYPE_ACLASS); if (ac) { - GrabThePointer(ewin->win); + GrabThePointer(ewin->win, ECSR_GRAB); if (EventAclass(ev, ewin, ac)) { goto done; =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/grabs.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- grabs.c 4 May 2004 19:04:29 -0000 1.16 +++ grabs.c 15 Jul 2004 18:23:54 -0000 1.17 @@ -90,7 +90,7 @@ } int -GrabThePointer(Window win) +GrabThePointer(Window win, int csr) { int ret; @@ -101,14 +101,15 @@ XGrabPointer(disp, win, True, ButtonPressMask | ButtonReleaseMask | PointerMotionMask | ButtonMotionMask | EnterWindowMask | LeaveWindowMask, - GrabModeAsync, GrabModeAsync, None, None, CurrentTime); + GrabModeAsync, GrabModeAsync, None, ECsrGet(csr), + CurrentTime); grab_window = win; Mode.click_focus_grabbed = 1; EDBUG_RETURN(ret); } int -GrabConfineThePointer(Window win) +GrabConfineThePointer(Window win, int csr) { int ret; @@ -119,7 +120,8 @@ XGrabPointer(disp, win, True, ButtonPressMask | ButtonReleaseMask | PointerMotionMask | ButtonMotionMask | EnterWindowMask | LeaveWindowMask, - GrabModeAsync, GrabModeAsync, win, None, CurrentTime); + GrabModeAsync, GrabModeAsync, win, ECsrGet(csr), + CurrentTime); grab_window = win; Mode.click_focus_grabbed = 1; EDBUG_RETURN(ret); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/moveresize.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -3 -r1.20 -r1.21 --- moveresize.c 29 Jun 2004 08:52:41 -0000 1.20 +++ moveresize.c 15 Jul 2004 18:23:54 -0000 1.21 @@ -49,9 +49,11 @@ FX_Pause(); GrabX(); } - UnGrabTheButtons(); - GrabConfineThePointer(VRoot.win); + SoundPlay("SOUND_MOVE_START"); + UnGrabTheButtons(); + GrabConfineThePointer(VRoot.win, ECSR_ACT_MOVE); + Mode.mode = MODE_MOVE_PENDING; Mode.constrained = constrained; Mode.start_x = Mode.x; @@ -271,9 +273,11 @@ GrabX(); } Mode.queue_up = 0; + SoundPlay("SOUND_RESIZE_START"); UnGrabTheButtons(); - GrabConfineThePointer(VRoot.win); + GrabConfineThePointer(VRoot.win, ECSR_ACT_RESIZE); + switch (hv) { case MODE_RESIZE: =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/pager.c,v retrieving revision 1.101 retrieving revision 1.102 diff -u -3 -r1.101 -r1.102 --- pager.c 14 Jul 2004 16:00:37 -0000 1.101 +++ pager.c 15 Jul 2004 18:23:54 -0000 1.102 @@ -1784,7 +1784,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); + GrabThePointer(p->hi_win, None); p->hi_visible = 1; p->hi_ewin = ewin; p->hi_win_w = ww; ------------------------------------------------------- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click _______________________________________________ enlightenment-cvs mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs