E_Gesture_Event_Edge_Finger_Edge *edata;
E_Gesture_Event_Edge_Swipe *edge_swipes = &gesture->gesture_events.edge_swipes;
int bp = -1;
+ Eina_Bool exclusive_send = EINA_FALSE;
if (gesture->gesture_events.event_keep)
{
if (bp >= edata->sp && bp <= edata->ep)
{
_e_gestue_send_edge_swipe_event(edata, fingers, x, y, edge);
+ exclusive_send = EINA_TRUE;
break;
}
}
}
- else
+
+ if (exclusive_send == EINA_FALSE)
{
EINA_LIST_FOREACH(edge_swipes->base.fingers[fingers].edge[edge], l, edata)
{
E_Gesture_Event_Edge_Finger_Edge *edata;
E_Gesture_Event_Edge_Drag *edge_drags = &gesture->gesture_events.edge_drags;
int bp = -1;
+ Eina_Bool exclusive_send = EINA_FALSE;
if (gesture->gesture_events.event_keep)
{
if (bp >= edata->sp && bp <= edata->ep)
{
_e_gesture_send_edge_drag_event(edata, fingers, x, y, edge, mode);
+ exclusive_send = EINA_TRUE;
break;
}
}
}
- else
+
+ if (exclusive_send == EINA_FALSE)
{
EINA_LIST_FOREACH(edge_drags->base.fingers[fingers].edge[edge], l, edata)
{