atspi: emit i18n name change signal only for highlighted object 71/255771/3 accepted/tizen/unified/20210330.111316 submit/tizen/20210329.004856
authorShinwoo Kim <cinoo.kim@samsung.com>
Tue, 23 Mar 2021 10:47:05 +0000 (19:47 +0900)
committerShinwoo Kim <cinoo.kim@samsung.com>
Thu, 25 Mar 2021 01:52:07 +0000 (10:52 +0900)
User could change genlist item text even though it does not have highlight.
And if user changes for all items, then it make unnecessary ipc call.

There was a problem that too much signal was generated.
It seems that there would be root reason of this problem.
Before finding it, this could be reasonable solution.

*tizen_fix

Change-Id: I93d7c914d1693e18670c2169536a4041526b21ca

src/lib/elementary/elm_genlist.c
src/lib/elementary_tizen/elm_genlist.c

index 449c567..aad9406 100644 (file)
@@ -401,7 +401,10 @@ _item_text_realize(Elm_Gen_Item *it,
              edje_object_signal_emit(target, buf, "elm");
           }
         if (_elm_atspi_enabled())
-          efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
+          //TIZEN_ONLY(20210323): reduce unnecessary signal
+          if (EO_OBJ(it) == _elm_object_accessibility_currently_highlighted_get())
+          //
+            efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
      }
 }
 
@@ -6386,7 +6389,10 @@ _elm_genlist_efl_ui_widget_screen_reader(Eo *obj EINA_UNUSED, Elm_Genlist_Data *
                                  efl_access_children_changed_added_signal_emit(EO_OBJ(it), content);
                               }
                          }
-                       efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
+                       //TIZEN_ONLY(20210323): reduce unnecessary signal
+                       if (EO_OBJ(it) == _elm_object_accessibility_currently_highlighted_get())
+                       //
+                         efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
                     }
                   else
                     {
index 48496b8..36948a3 100644 (file)
@@ -920,7 +920,10 @@ _item_text_realize(Elm_Gen_Item *it,
           }
         edje_object_message_signal_process(target);
         if (_elm_atspi_enabled())
-          efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
+          //TIZEN_ONLY(20210323): reduce unnecessary signal
+          if (EO_OBJ(it) == _elm_object_accessibility_currently_highlighted_get())
+          //
+            efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
      }
 }
 
@@ -7926,7 +7929,10 @@ _elm_genlist_efl_ui_widget_screen_reader(Eo *obj EINA_UNUSED, Elm_Genlist_Data *
                                  efl_access_children_changed_added_signal_emit(EO_OBJ(it), content);
                               }
                          }
-                       efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
+                       //TIZEN_ONLY(20210323): reduce unnecessary signal
+                       if (EO_OBJ(it) == _elm_object_accessibility_currently_highlighted_get())
+                       //
+                         efl_access_i18n_name_changed_signal_emit(EO_OBJ(it));
                     }
                   else
                     {