Enlightenment CVS committal Author : sebastid Project : e17 Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_x Modified Files: ecore_x.c ecore_x_dnd.c ecore_x_events.c Log Message: Move dnd stuff to ecore_x_dnd.c, and set default action to copy. It works!!! =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x.c,v retrieving revision 1.97 retrieving revision 1.98 diff -u -3 -r1.97 -r1.98 --- ecore_x.c 30 Sep 2005 06:16:49 -0000 1.97 +++ ecore_x.c 8 Oct 2005 14:38:15 -0000 1.98 @@ -62,32 +62,6 @@ Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_SECONDARY = 0; Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD = 0; -Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND = 0; -Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_MOVE = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LINK = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_PROXY = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_DROP = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED = 0; -Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE = 0; - -/* Xdnd atoms that need to be exposed to the application interface */ -Ecore_X_Atom ECORE_X_DND_ACTION_COPY = 0; -Ecore_X_Atom ECORE_X_DND_ACTION_MOVE = 0; -Ecore_X_Atom ECORE_X_DND_ACTION_LINK = 0; -Ecore_X_Atom ECORE_X_DND_ACTION_ASK = 0; -Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE = 0; - int ECORE_X_EVENT_KEY_DOWN = 0; int ECORE_X_EVENT_KEY_UP = 0; int ECORE_X_EVENT_MOUSE_BUTTON_DOWN = 0; @@ -147,13 +121,6 @@ int ECORE_X_EVENT_STARTUP_SEQUENCE_CHANGE = 0; int ECORE_X_EVENT_STARTUP_SEQUENCE_REMOVE = 0; -int ECORE_X_EVENT_XDND_ENTER = 0; -int ECORE_X_EVENT_XDND_POSITION = 0; -int ECORE_X_EVENT_XDND_STATUS = 0; -int ECORE_X_EVENT_XDND_LEAVE = 0; -int ECORE_X_EVENT_XDND_DROP = 0; -int ECORE_X_EVENT_XDND_FINISHED = 0; - int ECORE_X_MODIFIER_SHIFT = 0; int ECORE_X_MODIFIER_CTRL = 0; int ECORE_X_MODIFIER_ALT = 0; @@ -339,13 +306,6 @@ ECORE_X_EVENT_STARTUP_SEQUENCE_NEW = ecore_event_type_new(); ECORE_X_EVENT_STARTUP_SEQUENCE_CHANGE = ecore_event_type_new(); ECORE_X_EVENT_STARTUP_SEQUENCE_REMOVE = ecore_event_type_new(); - - ECORE_X_EVENT_XDND_ENTER = ecore_event_type_new(); - ECORE_X_EVENT_XDND_POSITION = ecore_event_type_new(); - ECORE_X_EVENT_XDND_STATUS = ecore_event_type_new(); - ECORE_X_EVENT_XDND_LEAVE = ecore_event_type_new(); - ECORE_X_EVENT_XDND_DROP = ecore_event_type_new(); - ECORE_X_EVENT_XDND_FINISHED = ecore_event_type_new(); } /* everything has these... unless its like a pda... :) */ @@ -413,31 +373,6 @@ ECORE_X_ATOM_SELECTION_PROP_PRIMARY = XInternAtom(_ecore_x_disp, "_ECORE_SELECTION_PRIMARY", False); ECORE_X_ATOM_SELECTION_PROP_SECONDARY = XInternAtom(_ecore_x_disp, "_ECORE_SELECTION_SECONDARY", False); ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD = XInternAtom(_ecore_x_disp, "_ECORE_SELECTION_CLIPBOARD", False); - ECORE_X_ATOM_SELECTION_PROP_XDND = XInternAtom(_ecore_x_disp, "JXSelectionWindowProperty", False); - ECORE_X_ATOM_SELECTION_XDND = XInternAtom(_ecore_x_disp, "XdndSelection", False); - ECORE_X_ATOM_XDND_AWARE = XInternAtom(_ecore_x_disp, "XdndAware", False); - ECORE_X_ATOM_XDND_TYPE_LIST = XInternAtom(_ecore_x_disp, "XdndTypeList", False); - ECORE_X_ATOM_XDND_ENTER = XInternAtom(_ecore_x_disp, "XdndEnter", False); - ECORE_X_ATOM_XDND_POSITION = XInternAtom(_ecore_x_disp, "XdndPosition", False); - ECORE_X_ATOM_XDND_ACTION_COPY = XInternAtom(_ecore_x_disp, "XdndActionCopy", False); - ECORE_X_ATOM_XDND_ACTION_MOVE = XInternAtom(_ecore_x_disp, "XdndActionMove", False); - ECORE_X_ATOM_XDND_ACTION_PRIVATE = XInternAtom(_ecore_x_disp, "XdndActionPrivate", False); - ECORE_X_ATOM_XDND_ACTION_ASK = XInternAtom(_ecore_x_disp, "XdndActionAsk", False); - ECORE_X_ATOM_XDND_ACTION_LIST = XInternAtom(_ecore_x_disp, "XdndActionList", False); - ECORE_X_ATOM_XDND_ACTION_LINK = XInternAtom(_ecore_x_disp, "XdndActionLink", False); - ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = XInternAtom(_ecore_x_disp, "XdndActionDescription", False); - ECORE_X_ATOM_XDND_PROXY = XInternAtom(_ecore_x_disp, "XdndProxy", False); - ECORE_X_ATOM_XDND_STATUS = XInternAtom(_ecore_x_disp, "XdndStatus", False); - ECORE_X_ATOM_XDND_LEAVE = XInternAtom(_ecore_x_disp, "XdndLeave", False); - ECORE_X_ATOM_XDND_DROP = XInternAtom(_ecore_x_disp, "XdndDrop", False); - ECORE_X_ATOM_XDND_FINISHED = XInternAtom(_ecore_x_disp, "XdndFinished", False); - - /* Initialize the globally defined xdnd atoms */ - ECORE_X_DND_ACTION_COPY = ECORE_X_ATOM_XDND_ACTION_COPY; - ECORE_X_DND_ACTION_MOVE = ECORE_X_ATOM_XDND_ACTION_MOVE; - ECORE_X_DND_ACTION_LINK = ECORE_X_ATOM_XDND_ACTION_LINK; - ECORE_X_DND_ACTION_ASK = ECORE_X_ATOM_XDND_ACTION_ASK; - ECORE_X_DND_ACTION_PRIVATE = ECORE_X_ATOM_XDND_ACTION_PRIVATE; _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_DELETE_REQUEST] = ECORE_X_ATOM_WM_DELETE_WINDOW; _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_TAKE_FOCUS] = ECORE_X_ATOM_WM_TAKE_FOCUS; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_dnd.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- ecore_x_dnd.c 8 Oct 2005 13:51:58 -0000 1.24 +++ ecore_x_dnd.c 8 Oct 2005 14:38:15 -0000 1.25 @@ -6,6 +6,39 @@ #include "Ecore_X.h" #include "Ecore_X_Atoms.h" +Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND = 0; +Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_MOVE = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LINK = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_PROXY = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_DROP = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED = 0; +Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE = 0; + +/* Xdnd atoms that need to be exposed to the application interface */ +Ecore_X_Atom ECORE_X_DND_ACTION_COPY = 0; +Ecore_X_Atom ECORE_X_DND_ACTION_MOVE = 0; +Ecore_X_Atom ECORE_X_DND_ACTION_LINK = 0; +Ecore_X_Atom ECORE_X_DND_ACTION_ASK = 0; +Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE = 0; + +int ECORE_X_EVENT_XDND_ENTER = 0; +int ECORE_X_EVENT_XDND_POSITION = 0; +int ECORE_X_EVENT_XDND_STATUS = 0; +int ECORE_X_EVENT_XDND_LEAVE = 0; +int ECORE_X_EVENT_XDND_DROP = 0; +int ECORE_X_EVENT_XDND_FINISHED = 0; + static Ecore_X_DND_Source *_source = NULL; static Ecore_X_DND_Target *_target = NULL; static int _ecore_x_dnd_init_count = 0; @@ -25,6 +58,39 @@ _target->win = None; _target->source = None; _target->state = ECORE_X_DND_TARGET_IDLE; + + ECORE_X_EVENT_XDND_ENTER = ecore_event_type_new(); + ECORE_X_EVENT_XDND_POSITION = ecore_event_type_new(); + ECORE_X_EVENT_XDND_STATUS = ecore_event_type_new(); + ECORE_X_EVENT_XDND_LEAVE = ecore_event_type_new(); + ECORE_X_EVENT_XDND_DROP = ecore_event_type_new(); + ECORE_X_EVENT_XDND_FINISHED = ecore_event_type_new(); + + ECORE_X_ATOM_SELECTION_PROP_XDND = XInternAtom(_ecore_x_disp, "JXSelectionWindowProperty", False); + ECORE_X_ATOM_SELECTION_XDND = XInternAtom(_ecore_x_disp, "XdndSelection", False); + ECORE_X_ATOM_XDND_AWARE = XInternAtom(_ecore_x_disp, "XdndAware", False); + ECORE_X_ATOM_XDND_TYPE_LIST = XInternAtom(_ecore_x_disp, "XdndTypeList", False); + ECORE_X_ATOM_XDND_ENTER = XInternAtom(_ecore_x_disp, "XdndEnter", False); + ECORE_X_ATOM_XDND_POSITION = XInternAtom(_ecore_x_disp, "XdndPosition", False); + ECORE_X_ATOM_XDND_ACTION_COPY = XInternAtom(_ecore_x_disp, "XdndActionCopy", False); + ECORE_X_ATOM_XDND_ACTION_MOVE = XInternAtom(_ecore_x_disp, "XdndActionMove", False); + ECORE_X_ATOM_XDND_ACTION_PRIVATE = XInternAtom(_ecore_x_disp, "XdndActionPrivate", False); + ECORE_X_ATOM_XDND_ACTION_ASK = XInternAtom(_ecore_x_disp, "XdndActionAsk", False); + ECORE_X_ATOM_XDND_ACTION_LIST = XInternAtom(_ecore_x_disp, "XdndActionList", False); + ECORE_X_ATOM_XDND_ACTION_LINK = XInternAtom(_ecore_x_disp, "XdndActionLink", False); + ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = XInternAtom(_ecore_x_disp, "XdndActionDescription", False); + ECORE_X_ATOM_XDND_PROXY = XInternAtom(_ecore_x_disp, "XdndProxy", False); + ECORE_X_ATOM_XDND_STATUS = XInternAtom(_ecore_x_disp, "XdndStatus", False); + ECORE_X_ATOM_XDND_LEAVE = XInternAtom(_ecore_x_disp, "XdndLeave", False); + ECORE_X_ATOM_XDND_DROP = XInternAtom(_ecore_x_disp, "XdndDrop", False); + ECORE_X_ATOM_XDND_FINISHED = XInternAtom(_ecore_x_disp, "XdndFinished", False); + + /* Initialize the globally defined xdnd atoms */ + ECORE_X_DND_ACTION_COPY = ECORE_X_ATOM_XDND_ACTION_COPY; + ECORE_X_DND_ACTION_MOVE = ECORE_X_ATOM_XDND_ACTION_MOVE; + ECORE_X_DND_ACTION_LINK = ECORE_X_ATOM_XDND_ACTION_LINK; + ECORE_X_DND_ACTION_ASK = ECORE_X_ATOM_XDND_ACTION_ASK; + ECORE_X_DND_ACTION_PRIVATE = ECORE_X_ATOM_XDND_ACTION_PRIVATE; } _ecore_x_dnd_init_count++; @@ -211,12 +277,11 @@ _source->win = source; ecore_x_window_ignore_set(_source->win, 1); - printf("source: 0x%x\n", source); _source->state = ECORE_X_DND_SOURCE_DRAGGING; _source->time = _ecore_x_event_last_time; /* Default Accepted Action: ask */ - _source->action = ECORE_X_ATOM_XDND_ACTION_ASK; + _source->action = ECORE_X_ATOM_XDND_ACTION_COPY; _source->accepted_action = None; return 1; } =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_events.c,v retrieving revision 1.76 retrieving revision 1.77 diff -u -3 -r1.76 -r1.77 --- ecore_x_events.c 8 Oct 2005 13:51:58 -0000 1.76 +++ ecore_x_events.c 8 Oct 2005 14:38:15 -0000 1.77 @@ -1295,8 +1295,8 @@ Ecore_X_DND_Target *target; target = _ecore_x_dnd_target_get(); - if ((target->source != xevent->xclient.data.l[0]) - || (target->win != xevent->xclient.window)) + if ((target->source != xevent->xclient.data.l[0]) || + (target->win != xevent->xclient.window)) return; target->pos.x = xevent->xclient.data.l[2] >> 16; @@ -1324,8 +1324,8 @@ source = _ecore_x_dnd_source_get(); /* Make sure source/target match */ - if ((source->win != xevent->xclient.window ) - || (source->dest != (Window)xevent->xclient.data.l[0])) + if ((source->win != xevent->xclient.window ) || + (source->dest != (Window)xevent->xclient.data.l[0])) return; source->await_status = 0; @@ -1362,8 +1362,8 @@ Ecore_X_DND_Target *target; target = _ecore_x_dnd_target_get(); - if ((target->source != xevent->xclient.data.l[0]) - || (target->win != xevent->xclient.window)) + if ((target->source != xevent->xclient.data.l[0]) || + (target->win != xevent->xclient.window)) return; target->state = ECORE_X_DND_TARGET_IDLE; @@ -1383,8 +1383,8 @@ target = _ecore_x_dnd_target_get(); /* Match source/target */ - if ((target->source != (Window)xevent->xclient.data.l[0]) - || (target->win != xevent->xclient.window)) + if ((target->source != (Window)xevent->xclient.data.l[0]) || + (target->win != xevent->xclient.window)) return; target->time = (target->version >= 1) ? @@ -1409,8 +1409,8 @@ source = _ecore_x_dnd_source_get(); /* Match source/target */ - if ((source->win != xevent->xclient.window) - || (source->dest != (Window)xevent->xclient.data.l[0])) + if ((source->win != xevent->xclient.window) || + (source->dest != (Window)xevent->xclient.data.l[0])) return; if ((source->version >= 5) && (xevent->xclient.data.l[1] & 0x1UL)) @@ -1540,13 +1540,11 @@ else if ((xevent->xclient.message_type == ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN) && (xevent->xclient.format == 8)) { - printf("new startup info\n"); _ecore_x_netwm_startup_info_begin(xevent->xclient.window, xevent->xclient.data.b); } else if ((xevent->xclient.message_type == ECORE_X_ATOM_NET_STARTUP_INFO) && (xevent->xclient.format == 8)) { - printf("startup info\n"); _ecore_x_netwm_startup_info(xevent->xclient.window, xevent->xclient.data.b); } else if ((xevent->xclient.message_type == 27777) ------------------------------------------------------- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs