[Popup]: Default label implementation. 49/84449/2
authorShilpa Singh <shilpa.singh@samsung.com>
Thu, 18 Aug 2016 13:34:40 +0000 (19:04 +0530)
committerShilpa Singh <shilpa.singh@samsung.com>
Thu, 1 Sep 2016 08:15:34 +0000 (13:45 +0530)
Change-Id: I36e2b0babb36e7552f3369a4ebe221aef1e5bc50

include/flat_navi.h
res/po/en_US.po
src/flat_navi.c
src/navigator.c

index b558a22d9799d5bf685e0c77f5ed1daee2de7d70..ae9af32391a0f428e6c76c9e46aa1ea47ccd0cca 100644 (file)
@@ -138,6 +138,7 @@ const AtspiAccessible *flat_navi_context_first_get(FlatNaviContext *ctx);
 const AtspiAccessible *flat_navi_context_last_get(FlatNaviContext *ctx);
 
 Eina_Bool flat_navi_is_valid(FlatNaviContext *context, AtspiAccessible *new_root);
+Eina_Bool _has_activate_action(AtspiAccessible * obj);
 
 AtspiAccessible *flat_navi_get_object_in_relation(AtspiAccessible *source, AtspiRelationType search_type);
 
index 9c691b1c7a5dd94d509b12375fdec23515446b48..4d03fef529b4525f65068d77600489a0b6722015 100644 (file)
@@ -73,9 +73,6 @@ msgstr "Double tap to enter text"
 msgid "IDS_TRAIT_CTX_POPUP"
 msgstr "Alert"
 
-msgid "IDS_TRAIT_POPUP"
-msgstr "popup"
-
 msgid "IDS_TRAIT_SHOWING"
 msgstr "Showing"
 
index bff0b9542f04cd43cf6df32e119fd2750175c0ec..446dc236228d4eaf6db64e7f2cca81f48795e204 100644 (file)
@@ -73,7 +73,7 @@ static const AtspiRole interesting_roles[] = {
 
 extern bool sound_feedback;
 
-static Eina_Bool _has_activate_action(AtspiAccessible * obj)
+Eina_Bool _has_activate_action(AtspiAccessible * obj)
 {
        Eina_Bool ret = EINA_FALSE;
 
@@ -187,9 +187,6 @@ static Eina_Bool _accept_object(AtspiAccessible * obj)
        case ATSPI_ROLE_PAGE_TAB_LIST:
        case ATSPI_ROLE_INPUT_METHOD_WINDOW:
                return EINA_FALSE;
-       case ATSPI_ROLE_DIALOG:
-               if (!_has_activate_action(obj))
-                       return EINA_FALSE;
                break;
        default:
                break;
@@ -492,7 +489,7 @@ AtspiAccessible *_directional_depth_first_search(AtspiAccessible * root, AtspiAc
                role = atspi_accessible_get_role(node, NULL);
                if (node != start && (relation_mode || !prev_related_in_direction) && !(cc > 0 && next_sibling_idx_modifier < 0 && !all_children_visited) && stop_condition(node))
                {
-                       if (role == ATSPI_ROLE_PAGE_TAB || role == ATSPI_ROLE_POPUP_MENU)
+                       if (role == ATSPI_ROLE_PAGE_TAB || role == ATSPI_ROLE_POPUP_MENU || role == ATSPI_ROLE_DIALOG)
                        {
                                if (start == NULL)
                                {
index 86df901e788ef34fb922cab48e8ecc2906a5e071..e391aeb25242f133eabab9808f3ab93c58b956dc 100644 (file)
@@ -548,10 +548,6 @@ char *generate_trait(AtspiAccessible * obj)
                int children_count = _find_popup_list_children_count(obj);
                char trait[HOVERSEL_TRAIT_SIZE];
 
-               snprintf(trait, HOVERSEL_TRAIT_SIZE, _("IDS_TRAIT_POPUP"));
-               strncat(ret, trait, sizeof(ret) - strlen(ret) - 1);
-               strncat(ret, ", ", sizeof(ret) - strlen(ret) - 1);
-
                if (children_count > 0) {
                        snprintf(trait, HOVERSEL_TRAIT_SIZE, _("IDS_TRAIT_SHOWING"));
                        strncat(ret, trait, sizeof(ret) - strlen(ret) - 1);
@@ -565,9 +561,10 @@ char *generate_trait(AtspiAccessible * obj)
                        strncat(ret, trait, sizeof(ret) - strlen(ret) - 1);
                        strncat(ret, ", ", sizeof(ret) - strlen(ret) - 1);
                }
-
-               snprintf(trait, HOVERSEL_TRAIT_SIZE, _("IDS_TRAIT_POPUP_CLOSE"));
-               strncat(ret, trait, sizeof(ret) - strlen(ret) - 1);
+               if (_has_activate_action(obj)) {
+                       snprintf(trait, HOVERSEL_TRAIT_SIZE, _("IDS_TRAIT_POPUP_CLOSE"));
+                       strncat(ret, trait, sizeof(ret) - strlen(ret) - 1);
+               }
                break;
        }
        case ATSPI_ROLE_COMBO_BOX: {
@@ -1098,7 +1095,7 @@ static void _current_highlight_object_set(AtspiAccessible * obj, Highlight_Type
                        haptic_vibrate_start(HAPTIC_VIBRATE_DURATION, HAPTIC_VIBRATE_INTENSITY);
 
                role = atspi_accessible_get_role(obj, NULL);
-               if (role != ATSPI_ROLE_PAGE_TAB && role != ATSPI_ROLE_POPUP_MENU) { /* ctxpopup outline does not show highlight frame */
+               if (role != ATSPI_ROLE_PAGE_TAB && role != ATSPI_ROLE_POPUP_MENU && role != ATSPI_ROLE_DIALOG) { /* ctxpopup outline does not show highlight frame */
                        if (role == ATSPI_ROLE_UNKNOWN) {
                                /* to support elm_access used for embedded toolkit,
                                probably have to check more such as attribute 'type',