edje_edit: remove useless pointer grab as it conflicts with elementary combobox
authorVitalii Vorobiov <vi.vorobiov@samsung.com>
Thu, 30 Jun 2016 09:08:46 +0000 (12:08 +0300)
committerVitalii Vorobiov <vi.vorobiov@samsung.com>
Thu, 30 Jun 2016 09:08:46 +0000 (12:08 +0300)
Summary:
So currently having an issue related to clip_to function from
EdjeEdit API. I am not sure about how and why combobox use pointer grabbing
(just started to use it) but when setting NULL into clip_to of edje edit it
suddenly block entire screen away from mouse. Only when point is moved out of
window and back, only then it will be able to access widgets again.

Take a look at video and maybe try example to reproduce problem

I am not sure if deleting those functions from edje_edit is actually right
decision. But it will fix the problem of course.

Test Plan: See attached video and examples in attached files

Reviewers: NikaWhite, reutskiy.v.v, Hermet, cedric, raster

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4081

src/lib/edje/edje_edit.c

index e4f3c2a..6a903bb 100644 (file)
@@ -3709,15 +3709,6 @@ edje_edit_part_clip_to_set(Evas_Object *obj, const char *part, const char *clip_
    /* unset clipping */
    if (!clip_to)
      {
-        if (rp->part->clip_to_id >= 0)
-          {
-             clip = ed->table_parts[rp->part->clip_to_id % ed->table_parts_size];
-
-             evas_object_pointer_mode_set(clip->object,
-                                          EVAS_OBJECT_POINTER_MODE_AUTOGRAB);
-             evas_object_clip_unset(rp->object);
-          }
-
         evas_object_clip_set(rp->object, ed->base->clipper);
         if ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
             (rp->typedata.swallow) && (rp->typedata.swallow->swallowed_object))
@@ -3744,9 +3735,6 @@ edje_edit_part_clip_to_set(Evas_Object *obj, const char *part, const char *clip_
 
    rp->part->clip_to_id = clip->part->id;
 
-   evas_object_pass_events_set(clip->object, 1);
-   evas_object_pointer_mode_set(clip->object, EVAS_OBJECT_POINTER_MODE_NOGRAB);
-   evas_object_clip_set(rp->object, clip->object);
    if ((rp->type == EDJE_RP_TYPE_SWALLOW) &&
        (rp->typedata.swallow) && (rp->typedata.swallow->swallowed_object))
      evas_object_clip_set(rp->typedata.swallow->swallowed_object, clip->object);