}
//
+//TIZEN_ONLY(20170314): expose part-text as at-spi object
+static char *
+_access_name_set_cb(void *data, Evas_Object *obj EINA_UNUSED)
+{
+ char *text = data;
+ if (text)
+ return strdup(text);
+ return NULL;
+}
+
+static void
+_atspi_part_text_expose(Eo *obj, const char *part, Eina_Bool is_atspi)
+{
+ Evas_Object *ao = NULL;
+ ELM_POPUP_DATA_GET(obj, sd);
+ const char *text = NULL;
+ text = elm_layout_text_get(sd->main_layout, part);
+
+ if (text && is_atspi)
+ {
+ ao = _access_object_get(obj, part);
+ if (!ao)
+ {
+ ao = _elm_access_edje_object_part_object_register
+ (sd->main_layout, elm_layout_edje_get(sd->main_layout), part);
+ elm_atspi_accessible_role_set(ao, ELM_ATSPI_ROLE_LABEL);
+ elm_atspi_accessible_name_cb_set(ao, _access_name_set_cb, text);
+ }
+ }
+ else
+ {
+ ao = _access_object_get(obj, part);
+ if (ao)
+ _elm_access_object_unregister(ao, NULL);
+ }
+}
+//
+
static void
_access_obj_process(Eo *obj, Eina_Bool is_access)
{
int_ret = _subtitle_text_set(obj, label);
//
else
- int_ret = elm_layout_text_set(_pd->main_layout, part, label);
-
+ {
+ int_ret = elm_layout_text_set(_pd->main_layout, part, label);
+ //TIZEN_ONLY(20170314): expose part-text as at-spi object
+ _atspi_part_text_expose(obj, part,_elm_atspi_enabled());
+ //
+ }
_scroller_size_calc(obj);
elm_layout_sizing_eval(obj);
_elm_popup_elm_widget_atspi(Eo *obj, Elm_Popup_Data *_pd EINA_UNUSED, Eina_Bool is_atspi)
{
_atspi_expose_title(obj, is_atspi);
+ //TIZEN_ONLY(20170314): expose part-text as at-spi object
+ _atspi_part_text_expose(obj, "elm.text", is_atspi);
+ //
//TIZEN_ONLY(20161213): apply screen_reader_changed callback
evas_object_smart_callback_call(obj, SIG_ATSPI_SCREEN_READER_CHANGED, &is_atspi);