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
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs