From 14d9f13e9831c3ec9500b2714bb90ecb03985cf0 Mon Sep 17 00:00:00 2001 From: Shinwoo Kim Date: Thu, 1 Feb 2018 19:11:00 +0900 Subject: [PATCH] Revert "Add attributes_get for widget item." This reverts commit 4c823fdb553759b51d86a09bfa48b94f64a70fc7. (gdb) bt raise () from /lib/libc.so.6 abort () from /lib/libc.so.6 ?? () from /lib/libdbus-1.so.3 _dbus_warn_check_failed () from /lib/libdbus-1.so.3 dbus_message_iter_append_basic () from /lib/libdbus-1.so.3 append_basic (type=, vl=vl@entry=0xbe92cdc0, iter=iter@entry=0xb917df28) at lib/eldbus/eldbus_message.c:449 _eldbus_message_iter_arguments_vappend (aq=0xbe92cdc0, signature=0xb917df18 "\a", iter=0xb917df18) at lib/eldbus/eldbus_message.c:311 eldbus_message_iter_arguments_vappend (iter=iter@entry=0xb917df18, signature=signature@entry=0xbe92ce30 "\200\257\364\270", ap=..., ap@entry=...) at lib/eldbus/eldbus_message.c:372 eldbus_message_iter_arguments_append (iter=iter@entry=0xb917df18, signature=0xb6f309a0 "ss") at lib/eldbus/eldbus_message.c:387 _accessible_reading_material_get (iface=, msg=) at elm_atspi_bridge.c:1213 _object_handler (dbus_conn=, msg=, user_data=0xb8fc9610) at lib/eldbus/eldbus_service.c:1363 ?? () from /lib/libdbus-1.so.3 dbus_connection_dispatch () from /lib/libdbus-1.so.3 eldbus_idler (data=0xb905fae0) at lib/eldbus/eldbus_core.c:777 _ecore_call_task_cb (data=, func=) at lib/ecore/ecore_private.h:349 _ecore_idler_all_call () at lib/ecore/ecore_idler.c:157 _ecore_main_loop_spin_core () at lib/ecore/ecore_main.c:1852 _ecore_main_loop_spin_timers () at lib/ecore/ecore_main.c:1886 _ecore_main_loop_iterate_internal (once_only=once_only@entry=0) at lib/ecore/ecore_main.c:2009 ecore_main_loop_begin () at lib/ecore/ecore_main.c:1042 appcore_base_init () from /lib/libappcore-common.so.1 appcore_ui_base_init () from /lib/libappcore-ui.so.1 appcore_efl_base_init () from /lib/libappcore-efl.so.1 ?? () from /lib/libcapi-appfw-application.so.0 ui_app_main () from /lib/libcapi-appfw-application.so.0 ?? () __libc_start_main () from /lib/libc.so.6 _start () Change-Id: Ia1bac8f0725f19b93251c2b86f40af7acd19346a --- src/lib/elm_widget.c | 40 ++++++++++++++++++++++++---------------- src/lib/elm_widget.h | 6 ++++++ src/lib/elm_widget_item.eo | 1 - 3 files changed, 30 insertions(+), 17 deletions(-) diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c index 7e11a78..b759518 100644 --- a/src/lib/elm_widget.c +++ b/src/lib/elm_widget.c @@ -4863,6 +4863,18 @@ _elm_widget_item_eo_base_destructor(Eo *eo_item, Elm_Widget_Item_Data *item) if (item->atspi_translation_domain) eina_stringshare_del(item->atspi_translation_domain); // + //Tizen Only(20160728) free attribute list + if (item->attr_list) + { + Elm_Atspi_Attribute *attr; + EINA_LIST_FREE(item->attr_list, attr) + { + eina_stringshare_del(attr->key); + eina_stringshare_del(attr->value); + free(attr); + } + } + // //TIZEN_ONLY(20161013): clean up elm color class feature if (item->color_classes) @@ -6320,6 +6332,18 @@ _elm_widget_eo_base_destructor(Eo *obj, Elm_Widget_Smart_Data *sd EINA_UNUSED) if (sd->atspi_translation_domain) eina_stringshare_del(sd->atspi_translation_domain); // + //Tizen Only(20160728) free attribute list + if (sd->attr_list) + { + Elm_Atspi_Attribute *attr; + EINA_LIST_FREE(sd->attr_list, attr) + { + eina_stringshare_del(attr->key); + eina_stringshare_del(attr->value); + free(attr); + } + } + // eo_do_super(obj, ELM_WIDGET_CLASS, eo_destructor()); sd->on_destroy = EINA_FALSE; @@ -7096,22 +7120,6 @@ _elm_widget_elm_interface_atspi_accessible_attributes_get(Eo *obj, Elm_Widget_Sm return attr_list; } -EOLIAN static Eina_List * -_elm_widget_item_elm_interface_atspi_accessible_attributes_get(Eo *eo_item, Elm_Widget_Item_Data *pd EINA_UNUSED) -{ - Eina_List *attr_list = NULL; - eo_do_super(eo_item, ELM_WIDGET_ITEM_CLASS, attr_list = elm_interface_atspi_accessible_attributes_get()); - Elm_Atspi_Attribute *attr = NULL; - attr = calloc(1, sizeof(Elm_Atspi_Attribute)); - if (attr) - { - attr->key = eina_stringshare_add("style"); - attr->value = eina_stringshare_add(elm_object_item_style_get(eo_item)); - attr_list = eina_list_append(attr_list, attr); - } - return attr_list; -} - //TIZEN_ONLY(20150709) : atspi relations api EOLIAN static Elm_Atspi_Relation_Set _elm_widget_elm_interface_atspi_accessible_relation_set_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd) diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h index 2621701..2334f66 100644 --- a/src/lib/elm_widget.h +++ b/src/lib/elm_widget.h @@ -426,6 +426,9 @@ typedef struct _Elm_Widget_Smart_Data //TIZEN_ONLY(20150731) : add i18n support for name and description const char *atspi_translation_domain; /// + //TIZEN_ONLY(20160725): Add attributes set function and store the list + Eina_List *attr_list; + // /* this is a hook to be set on-the-fly on widgets. this is code * handling the request of showing a specific region from an inner @@ -684,6 +687,9 @@ struct _Elm_Widget_Item_Data Elm_Atspi_Relation_Set atspi_custom_relations; /**< Developer-defined accessiblity relations */ /////////////////////////////////// const char *name; + //TIZEN_ONLY(20160725): Add attributes set function and store the list + Eina_List *attr_list; + // //TIZEN_ONLY(20150731) : add i18n support for name and description const char *atspi_translation_domain; /// diff --git a/src/lib/elm_widget_item.eo b/src/lib/elm_widget_item.eo index 7f37512..c95bf7d 100644 --- a/src/lib/elm_widget_item.eo +++ b/src/lib/elm_widget_item.eo @@ -683,7 +683,6 @@ class Elm.Widget_Item (Eo.Base, Elm_Interface_Atspi_Accessible, // Elm_Interface_Atspi_Accessible.state_set.get; Elm_Interface_Atspi_Accessible.parent.get; - Elm_Interface_Atspi_Accessible.attributes.get; //TIZEN_ONLY(20150709) : atspi relations api Elm_Interface_Atspi_Accessible.relationship_append; Elm_Interface_Atspi_Accessible.relationship_remove; -- 2.7.4