return get_percent_value(rm->value, rm->lower, rm->upper);
}
-TIZEN_PROD_STATIC void add_percent_value_description(Eina_Strbuf *buf, int percent)
+TIZEN_PROD_STATIC void add_percent_value_string(Eina_Strbuf *buf, int percent)
{
char buf_percent[64] = "\0";
SUPPRESS_FORMAT_ERROR(eina_strbuf_append_printf(buf, _("IDS_GCTS_OPT_P1SS_PERCENT_TTS"), buf_percent));
}
-TIZEN_PROD_STATIC void add_slider_description(Eina_Strbuf *buf, AtspiAccessibleReadingMaterial *rm)
+TIZEN_PROD_STATIC void add_slider_state(Eina_Strbuf *buf, AtspiAccessibleReadingMaterial *rm)
{
- add_percent_value_description(buf, get_percent_value_from_rm(rm));
+ add_percent_value_string(buf, get_percent_value_from_rm(rm));
}
TIZEN_PROD_STATIC char *generate_role_trait(AtspiAccessibleReadingMaterial *rm)
case ATSPI_ROLE_PROGRESS_BAR: {
double val = rm->value;
if (val > 0) {
- add_percent_value_description(buf, get_percent_value_from_rm(rm));
+ add_percent_value_string(buf, get_percent_value_from_rm(rm));
}
break;
}
TIZEN_PROD_STATIC char *generate_state_trait(AtspiAccessibleReadingMaterial *rm)
{
AtspiRole role = rm->role;
- char ret[TTS_MAX_TEXT_SIZE] = "\0";
+ char* ret = NULL;
+ Eina_Strbuf *buf;
+
+ buf = eina_strbuf_new();
+
switch (role) {
case ATSPI_ROLE_LIST_ITEM: {
AtspiAccessible *parent = rm->parent;
if (parent_role == ATSPI_ROLE_TREE_TABLE) {
gboolean is_selected = STATE_SET_CONTAINS(rm->states, ATSPI_STATE_SELECTED);
if (is_selected)
- g_strlcpy(ret, _("IDS_ACCS_BODY_SELECTED_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_ACCS_BODY_SELECTED_TTS"));
}
break;
}
case ATSPI_ROLE_CHECK_BOX: {
if (STATE_SET_CONTAINS(rm->states, ATSPI_STATE_CHECKED))
- g_strlcpy(ret, _("COM_TV_SID_CHECKED"), sizeof(ret) - 1);
+ ESAL(buf, _("COM_TV_SID_CHECKED"));
else
- g_strlcpy(ret, _("COM_TV_SID_UNCHECKED"), sizeof(ret) - 1);
+ ESAL(buf, _("COM_TV_SID_UNCHECKED"));
break;
}
case ATSPI_ROLE_RADIO_BUTTON: {
if (!parent) break;
parent_role = rm->parent_role;
if (STATE_SET_CONTAINS(rm->states, ATSPI_STATE_CHECKED))
- g_strlcpy(ret, _("IDS_ACCS_BODY_SELECTED_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_ACCS_BODY_SELECTED_TTS"));
else if (!STATE_SET_CONTAINS(rm->states, ATSPI_STATE_EDITABLE) && (parent_role != ATSPI_ROLE_COLOR_CHOOSER))
- g_strlcpy(ret, _("IDS_ACCS_OPT_NOT_SELECTED_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_ACCS_OPT_NOT_SELECTED_TTS"));
//Role name should not be read for radio button, color selector, multibuttonentry items
break;
}
case ATSPI_ROLE_TOGGLE_BUTTON: {
if (STATE_SET_CONTAINS(rm->states, ATSPI_STATE_CHECKED))
- g_strlcpy(ret, _("IDS_MSG_BODY_ON_T_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_MSG_BODY_ON_T_TTS"));
else
- g_strlcpy(ret, _("IDS_STORYALBUM_BODY_OFF_T_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_STORYALBUM_BODY_OFF_T_TTS"));
break;
}
case ATSPI_ROLE_RADIO_MENU_ITEM: {
- g_strlcpy(ret, _("IDS_ACCS_BODY_SELECTED_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_ACCS_BODY_SELECTED_TTS"));
break;
}
case ATSPI_ROLE_ENTRY:
case ATSPI_ROLE_PASSWORD_TEXT: {
if (!STATE_SET_CONTAINS(rm->states, ATSPI_STATE_EDITABLE)) break;
if (STATE_SET_CONTAINS(rm->states, ATSPI_STATE_FOCUSED))
- g_strlcpy(ret, _("IDS_ST_BODY_EDITING_T_TTS"), sizeof(ret) - 1);
+ ESAL(buf, _("IDS_ST_BODY_EDITING_T_TTS"));
+ break;
+ }
+ case ATSPI_ROLE_SLIDER: {
+ add_slider_state(buf, rm);
break;
}
default:
break;
}
- return g_strdup(ret);
+ ret = eina_strbuf_string_steal(buf);
+ eina_strbuf_free(buf);
+
+ return ret;
}
TIZEN_PROD_STATIC char *generate_description_trait(AtspiAccessibleReadingMaterial *rm)
}
}
- if (rm->role == ATSPI_ROLE_SLIDER) {
- add_slider_description(buf, rm);
- }
if (reading_attribute & ACCESSIBLE_READING_INFO_TYPE_STATE) {
DEBUG("START : ACCESSIBLE_READING_INFO_TYPE_STATE");
state_from_role = generate_state_trait(rm);
return NULL;
}
- add_percent_value_description(buf, get_percent_value_from_rm(rm));
+ add_percent_value_string(buf, get_percent_value_from_rm(rm));
char *percent_value_description = eina_strbuf_string_steal(buf);
eina_strbuf_free(buf);
EXPECT_FUNCTION_CALL(m_atspi_accessible_get_localized_role_name, (obj_, nullptr)).WillOnce(Return(nullptr));
EXPECT_FUNCTION_CALL(m_atspi_accessible_get_value_iface, (obj_)).WillOnce(Return(nullptr));
- add_slider_description(nullptr, 0, obj_);
+ add_slider_state(nullptr, 0, obj_);
}
TEST_F(RoleTraitFixture, AddSliderDescriptionWithValueIface) {
EXPECT_FUNCTION_CALL(m_atspi_value_get_minimum_value, (valueIface_, nullptr)).WillOnce(Return(0));
EXPECT_FUNCTION_CALL(m_g_object_unref, (valueIface_));
- add_slider_description(dest, dest_size, obj_);
+ add_slider_state(dest, dest_size, obj_);
}
TEST_F(RoleTraitFixture, NullObject) {
}
TEST_F(RoleTraitFixture, Slider) {
- DEFINE_MOCKING(add_slider_description);
+ DEFINE_MOCKING(add_slider_state);
AtspiAccessible *obj_ = GetAtspiAccessibleObject();
CallGeneralDependencies(ATSPI_ROLE_SLIDER);
- EXPECT_FUNCTION_CALL(m_add_slider_description, (_, _, obj_)).Times(1);
+ EXPECT_FUNCTION_CALL(m_add_slider_state, (_, _, obj_)).Times(1);
RunGenRoleTraitAndFreeMemory(obj_, "");
}
}
#include <cmock/cmock.h>
-extern "C" void add_slider_description(Eina_Strbuf * buf, AtspiAccessibleReadingMaterial * rm);
+extern "C" void add_slider_state(Eina_Strbuf * buf, AtspiAccessibleReadingMaterial * rm);
extern "C" void display_info_about_object(AtspiAccessibleReadingMaterial * rm);
extern "C" char * generate_description_from_relation_object(AtspiAccessibleReadingMaterial * rm);
extern "C" char * generate_description_trait(AtspiAccessibleReadingMaterial * rm);
extern "C" char * generate_state_trait(AtspiAccessibleReadingMaterial * rm);
extern "C" unsigned short reading_composer_reading_attribute_get(AtspiAccessibleReadingMaterial * rm);
extern "C" void reading_composer_reading_material_free(AtspiAccessibleReadingMaterial * rm);
-DECLARE_FUNCTION_MOCK2(mock_add_slider_description, add_slider_description, void(Eina_Strbuf *, AtspiAccessibleReadingMaterial *));
+DECLARE_FUNCTION_MOCK2(mock_add_slider_state, add_slider_state, void(Eina_Strbuf *, AtspiAccessibleReadingMaterial *));
DECLARE_FUNCTION_MOCK2(mock_cycle_detection_check_if_in_cycle, cycle_detection_check_if_in_cycle, Eina_Bool(cycle_detection_data *, const void *));
DECLARE_FUNCTION_MOCK2(mock_cycle_detection_initialize, cycle_detection_initialize, void(cycle_detection_data *, const void *));
DECLARE_FUNCTION_MOCK1(mock_display_info_about_object, display_info_about_object, void(AtspiAccessibleReadingMaterial *));