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