/* public functions */
EAPI void
+evas_event_default_flags_set(Evas *e, Evas_Event_Flags flags)
+{
+ MAGIC_CHECK(e, Evas, MAGIC_EVAS);
+ return;
+ MAGIC_CHECK_END();
+ e->default_event_flags = flags;
+}
+
+EAPI Evas_Event_Flags
+evas_event_default_flags_get(const Evas *e)
+{
+ MAGIC_CHECK(e, Evas, MAGIC_EVAS);
+ return EVAS_EVENT_FLAG_ON_HOLD;
+ MAGIC_CHECK_END();
+ return e->default_event_flags;
+}
+
+EAPI void
evas_event_freeze(Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
ev.locks = &(e->locks);
ev.flags = flags;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
/* append new touch point to the touch point list */
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
/* get new list of ins */
ins = evas_event_objects_event_list(e, NULL, e->pointer.x, e->pointer.y);
ev_in.modifiers = &(e->modifiers);
ev_in.locks = &(e->locks);
ev_in.timestamp = timestamp;
- ev_in.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev_in.event_flags = e->default_event_flags;
EINA_LIST_FOREACH(ins, l, obj_itr)
{
ev.locks = &(e->locks);
ev.flags = flags;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
/* update released touch point */
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
copy = evas_event_list_copy(e->pointer.object.in);
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
copy = evas_event_list_copy(e->pointer.object.in);
EINA_LIST_FOREACH(copy, l, obj)
{
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
if (copy) eina_list_free(copy);
while (outs)
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
ev2.buttons = e->pointer.button;
ev2.output.x = e->pointer.x;
ev2.modifiers = &(e->modifiers);
ev2.locks = &(e->locks);
ev2.timestamp = timestamp;
- ev2.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev2.event_flags = e->default_event_flags;
ev3.buttons = e->pointer.button;
ev3.output.x = e->pointer.x;
ev3.modifiers = &(e->modifiers);
ev3.locks = &(e->locks);
ev3.timestamp = timestamp;
- ev3.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev3.event_flags = e->default_event_flags;
/* get all new in objects */
ins = evas_event_objects_event_list(e, NULL, x, y);
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
/* get new list of ins */
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
/* if our mouse button is grabbed to any objects */
ev.locks = &(e->locks);
ev.flags = flags;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
/* append new touch point to the touch point list */
ev.locks = &(e->locks);
ev.flags = flags;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
/* update released touch point */
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
copy = evas_event_list_copy(e->pointer.object.in);
EINA_LIST_FOREACH(copy, l, obj)
ev.modifiers = &(e->modifiers);
ev.locks = &(e->locks);
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
/* get all new in objects */
ins = evas_event_objects_event_list(e, NULL, x, y);
ev.string = string;
ev.compose = compose;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
if (e->grabs)
{
ev.string = string;
ev.compose = compose;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
if (e->grabs)
{
ev.hold = hold;
ev.data = (void *)data;
ev.timestamp = timestamp;
- ev.event_flags = EVAS_EVENT_FLAG_NONE;
+ ev.event_flags = e->default_event_flags;
_evas_walk(e);
copy = evas_event_list_copy(e->pointer.object.in);