_xdnd->state = ECORE_X_DND_DRAGGING;
_xdnd->time = _ecore_x_event_last_time;
+ /* Default Accepted Action: ask */
+ _xdnd->action = _ecore_x_atom_xdnd_action_ask;
+ _xdnd->accepted_action = None;
+
/* TODO: Set supported data types in API */
_type_text_plain = ecore_x_atom_get("text/plain");
_xdnd->num_types = 1;
void
ecore_x_event_mask_set(Ecore_X_Window w, long mask)
{
- XSelectInput(_ecore_x_disp, w, mask);
+ XWindowAttributes attr;
+
+ memset(&attr, 0, sizeof(XWindowAttributes));
+ XGetWindowAttributes(_ecore_x_disp, w, &attr);
+ XSelectInput(_ecore_x_disp, w, mask | attr.your_event_mask);
}
static void
void _ecore_x_selection_data_init(void);
void _ecore_x_selection_shutdown(void);
Atom _ecore_x_selection_target_atom_get(char *target);
-char * _ecore_x_selection_target_get(Atom target);
+char *
+ _ecore_x_selection_target_get(Atom target);
void _ecore_x_selection_request_data_set(Ecore_X_Selection_Data data);
-Ecore_X_Selection_Data * _ecore_x_selection_get(Atom selection);
+Ecore_X_Selection_Data *
+ _ecore_x_selection_get(Atom selection);
int _ecore_x_selection_set(Window w, unsigned char *data, int len, Atom selection);
int _ecore_x_selection_convert(Atom selection, Atom target, void **data_ret);