atspi: make highlight frame be a smart member 67/147167/2
authorShinwoo Kim <cinoo.kim@samsung.com>
Fri, 1 Sep 2017 07:35:55 +0000 (16:35 +0900)
committerShinwoo Kim <cinoo.kim@samsung.com>
Fri, 1 Sep 2017 09:56:45 +0000 (18:56 +0900)
Make highlight frame object be a smart member of target object.
There are two cases covered by this commit.

1. ctxpopup of copy & paste module.
The ctxpopup item has higher object layer than highlight frame object.
In this case, the highlight frame is covered by the ctxpopup item.

2. genlist item proxy object.
The genlist item shows its proxy object(handled by evas_object_image_source*).
In this case, the highlight frame has improper position, and size.

Change-Id: I2b6470a8a695ea3739ddf80832e837dbd2c0d1f8

src/lib/elm_win.c

index 8e8134314b47dfc789044ac6c19efbfa9b004175..56017cf58e9ca42b3e93d493e7e82366b8bb7985 100644 (file)
@@ -961,6 +961,7 @@ _elm_win_accessibility_highlight_visible_set(Elm_Win_Data *sd,
      }
    else
      {
+        evas_object_smart_member_del(fobj);
         evas_object_hide(fobj);
         evas_object_del(fobj);
      }
@@ -1028,7 +1029,7 @@ static void
 _elm_win_accessibility_highlight_simple_setup(Elm_Win_Data *sd,
                                       Evas_Object *obj)
 {
-   Evas_Object *clip, *target = sd->accessibility_highlight.cur.target;
+   Evas_Object *target = sd->accessibility_highlight.cur.target;
    Evas_Coord x, y, w, h;
    //TIZEN_ONLY(20160623): atspi: moved highlight when object is out of screen
    Evas_Coord ox, oy;
@@ -1074,8 +1075,7 @@ _elm_win_accessibility_highlight_simple_setup(Elm_Win_Data *sd,
    sd->accessibility_highlight.cur.y = oy;
    //
 
-   clip = evas_object_clip_get(target);
-   if (clip) evas_object_clip_set(obj, clip);
+   evas_object_smart_member_add(obj, target);
 }
 
 static void