add new flag for zone edge objects to allow shape cutting while repeating events

fixes case where edge binding would (possibly) trigger but then not allow input
to any canvas objects at the screen edge
This commit is contained in:
Mike Blumenkrantz 2016-10-17 11:18:46 -04:00
parent dece6a5514
commit 7dc0930c8a
2 changed files with 4 additions and 1 deletions

View File

@ -700,7 +700,8 @@ _e_comp_shapes_update_object_shape_comp_helper(Evas_Object *o, Eina_Tiler *tb)
int x, y, w, h;
/* ignore hidden and pass-event objects */
if ((!evas_object_visible_get(o)) || evas_object_pass_events_get(o) || evas_object_repeat_events_get(o)) return;
if ((!evas_object_visible_get(o)) || evas_object_pass_events_get(o)) return;
if (evas_object_repeat_events_get(o) && (!evas_object_data_get(o, "comp_repeat"))) return;
/* ignore canvas objects */
if (_e_comp_shapes_update_object_checker_function_thingy(o)) return;
SHAPE_INF("OBJ: %p:%s", o, evas_object_name_get(o) ?: evas_object_type_get(o));

View File

@ -1061,6 +1061,8 @@ e_zone_edge_new(E_Zone_Edge edge)
evas_object_name_set(zone->MEMBER, #MEMBER); \
evas_object_move(zone->MEMBER, (X), (Y)); \
evas_object_resize(zone->MEMBER, (W), (H)); \
evas_object_repeat_events_set(zone->MEMBER, 1); \
evas_object_data_set(zone->MEMBER, "comp_repeat", (void*)1); \
evas_object_color_set(zone->MEMBER, 0, 0, 0, 0); \
evas_object_event_callback_add(zone->MEMBER, EVAS_CALLBACK_MOUSE_MOVE, _e_zone_cb_mouse_move, zone); \
evas_object_event_callback_add(zone->MEMBER, EVAS_CALLBACK_MOUSE_IN, _e_zone_cb_mouse_in, zone); \