Enlightenment CVS committal Author : sebastid Project : e17 Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_x Modified Files: Ecore_X.h ecore_x_dnd.c ecore_x_events.c Log Message: More dnd cleanup. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Ecore_X.h,v retrieving revision 1.101 retrieving revision 1.102 diff -u -3 -r1.101 -r1.102 --- Ecore_X.h 23 Mar 2005 10:53:25 -0000 1.101 +++ Ecore_X.h 23 Mar 2005 15:40:53 -0000 1.102 @@ -455,7 +455,6 @@ struct _Ecore_X_Event_Xdnd_Enter { Ecore_X_Window win, source; - Ecore_X_Time time; char **types; int num_types; @@ -467,7 +466,6 @@ struct { int x, y; } position; - Ecore_X_Time time; Ecore_X_Atom action; }; @@ -475,6 +473,7 @@ { Ecore_X_Window win, target; int will_accept; + int suppress; Ecore_X_Rectangle rectangle; Ecore_X_Atom action; }; @@ -487,7 +486,6 @@ struct _Ecore_X_Event_Xdnd_Drop { Ecore_X_Window win, source; - Ecore_X_Time time; Ecore_X_Atom action; struct { int x, y; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_dnd.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- ecore_x_dnd.c 23 Mar 2005 10:53:34 -0000 1.16 +++ ecore_x_dnd.c 23 Mar 2005 15:40:53 -0000 1.17 @@ -239,9 +239,9 @@ xev.xany.type = ClientMessage; xev.xany.display = _ecore_x_disp; - xev.xclient.window = _xdnd->source; xev.xclient.message_type = ECORE_X_ATOM_XDND_FINISHED; xev.xclient.format = 32; + xev.xclient.window = _xdnd->source; xev.xclient.data.l[0] = _xdnd->dest; memset(xev.xclient.data.l + 1, 0, sizeof(long) * 3); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_events.c,v retrieving revision 1.43 retrieving revision 1.44 diff -u -3 -r1.43 -r1.44 --- ecore_x_events.c 23 Mar 2005 10:53:34 -0000 1.43 +++ ecore_x_events.c 23 Mar 2005 15:40:53 -0000 1.44 @@ -1204,8 +1204,6 @@ e->win = _xdnd->dest; e->source = _xdnd->source; - e->time = CurrentTime; - _ecore_x_event_last_time = e->time; ecore_event_add(ECORE_X_EVENT_XDND_ENTER, e, _ecore_x_event_free_xdnd_enter, NULL); } @@ -1221,10 +1219,6 @@ _xdnd->pos.x = xevent->xclient.data.l[2] >> 16; _xdnd->pos.y = xevent->xclient.data.l[2] & 0xFFFFUL; _xdnd->action = xevent->xclient.data.l[4]; /* Version 2 */ - /* TODO: Resolve a suitable method for enumerating Xdnd actions */ - - /* Would it be feasible to handle the processing of this message - * within ecore? I think not, but someone might have an idea here. */ _ecore_x_event_last_time = (_xdnd->version >= 1) ? (Time)xevent->xclient.data.l[3] : CurrentTime; @@ -1235,7 +1229,6 @@ e->source = _xdnd->source; e->position.x = _xdnd->pos.x; e->position.y = _xdnd->pos.y; - e->time = xevent->xclient.data.l[3]; /* Version 1 */ e->action = _xdnd->action; ecore_event_add(ECORE_X_EVENT_XDND_POSITION, e, NULL, NULL); } @@ -1266,6 +1259,7 @@ e->win = _xdnd->source; e->target = _xdnd->dest; e->will_accept = _xdnd->will_accept; + e->suppress = _xdnd->suppress; e->rectangle.x = _xdnd->rectangle.x; e->rectangle.y = _xdnd->rectangle.y; e->rectangle.width = _xdnd->rectangle.width; @@ -1300,7 +1294,6 @@ { Ecore_X_Event_Xdnd_Drop *e; Ecore_X_DND_Protocol *_xdnd; - Ecore_X_Time timestamp; _xdnd = _ecore_x_dnd_protocol_get(); /* Match source/target */ @@ -1308,14 +1301,13 @@ || (_xdnd->dest != xevent->xclient.window)) return; - timestamp = (_xdnd->version >= 1) ? + _ecore_x_event_last_time = (_xdnd->version >= 1) ? (Time)xevent->xclient.data.l[2] : _ecore_x_event_last_time; e = calloc(1, sizeof(Ecore_X_Event_Xdnd_Drop)); if (!e) return; e->win = _xdnd->dest; e->source = _xdnd->source; - e->time = timestamp; e->action = _xdnd->action; e->position.x = _xdnd->pos.x; e->position.y = _xdnd->pos.y; @@ -1338,6 +1330,7 @@ if ((_xdnd->version >= 5) && (xevent->xclient.data.l[1] & 0x1UL)) { /* Target successfully performed drop action */ + ecore_x_selection_xdnd_clear(); _xdnd->state = ECORE_X_DND_IDLE; } else { completed = 0; ------------------------------------------------------- This SF.net email is sponsored by: 2005 Windows Mobile Application Contest Submit applications for Windows Mobile(tm)-based Pocket PCs or Smartphones for the chance to win $25,000 and application distribution. Enter today at http://ads.osdn.com/?ad_id=6882&alloc_id=15148&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs