forked from enlightenment/efl
Evas masking: Fix precise_is_inside for masked smart objects
The flag should be set on the mask itself. Checking for (x,y) being inside the mask can be an expensive operation, so further optimization will be required.
This commit is contained in:
parent
836650e364
commit
6b81f4f220
|
@ -63,8 +63,13 @@ _evas_event_object_list_raw_in_get(Evas *eo_e, Eina_List *in,
|
|||
{
|
||||
if (obj->is_smart)
|
||||
{
|
||||
Evas_Object_Protected_Data *clip = obj->cur->clipper;
|
||||
int norep = 0;
|
||||
|
||||
if (clip && clip->mask->is_mask && clip->precise_is_inside)
|
||||
if (!evas_object_is_inside(clip->object, clip, x, y))
|
||||
continue;
|
||||
|
||||
if ((obj->map->cur.usemap) && (obj->map->cur.map) &&
|
||||
(obj->map->cur.map->count == 4))
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue