atspi: enhance line related to highlight frame 42/151042/3
authorShinwoo Kim <cinoo.kim@samsung.com>
Sat, 16 Sep 2017 08:09:33 +0000 (17:09 +0900)
committerShinwoo Kim <cinoo.kim@samsung.com>
Fri, 29 Sep 2017 10:43:20 +0000 (10:43 +0000)
1. Before elm_widget_theme_object_set for a11y highlight frame was called in
 _elm_win_accessibility_highlight_show which is called in highlighted object
 move, resize callback.

2. Before evas_object_smart_changed was not called even though a11y highlight
 frame is added as a smart member of highlighted object.

※ Refer to commit: c3b5da9 (atspi: make highlight frame be a smart member)

Change-Id: I1f5dc367d2fc5565d61ae12d44fb1e8a49eeb979

src/lib/elm_win.c

index 9473f45..3e1858d 100644 (file)
@@ -1074,8 +1074,6 @@ _elm_win_accessibility_highlight_simple_setup(Elm_Win_Data *sd,
    sd->accessibility_highlight.cur.x = ox;
    sd->accessibility_highlight.cur.y = oy;
    //
-
-   evas_object_smart_member_add(obj, target);
 }
 
 static void
@@ -1121,8 +1119,6 @@ _elm_win_accessibility_highlight_show(void *data)
 {
    ELM_WIN_DATA_GET(data, sd);
    Evas_Object *fobj = sd->accessibility_highlight.fobj;
-   elm_widget_theme_object_set (sd->obj, fobj, "accessibility_highlight", "top", "default");
-   evas_object_raise(fobj);
    _elm_win_accessibility_highlight_simple_setup(sd, fobj);
    _elm_win_accessibility_highlight_visible_set(sd, EINA_TRUE);
 }
@@ -3359,10 +3355,15 @@ _elm_win_accessibility_highlight_init(Elm_Win_Data *sd, Evas_Object *atarget)
 {
    sd->accessibility_highlight.cur.target = atarget;
 
-   sd->accessibility_highlight.prev.target = NULL;
-   sd->accessibility_highlight.fobj = edje_object_add(sd->evas);
+   Evas_Object *fobj = edje_object_add(sd->evas);
+   sd->accessibility_highlight.fobj = fobj;
+   elm_widget_theme_object_set (sd->obj, fobj, "accessibility_highlight", "top", "default");
    if (atarget)
-      _elm_win_accessibility_highlight_callbacks_add(sd);
+     {
+        evas_object_smart_member_add(fobj, atarget);
+        evas_object_smart_changed(atarget);
+        _elm_win_accessibility_highlight_callbacks_add(sd);
+     }
 }
 
 static void