[Screen Readre] Correct reading of ctxpopup's children count 22/77722/1
authorPrasoon Singh <prasoon.16@samsung.com>
Thu, 30 Jun 2016 15:30:17 +0000 (21:00 +0530)
committerPrasoon Singh <prasoon.16@samsung.com>
Thu, 30 Jun 2016 15:30:17 +0000 (21:00 +0530)
Change-Id: I46bb48ed6902b514b80d6a933ebe501934fbbc9c

src/navigator.c

index 35cb852e95f7b2b5c4275af766cc3c42c5c62392..bf36b7aaeb3a9ab340f125937d515353bcbff0c9 100644 (file)
@@ -474,8 +474,13 @@ char *generate_trait(AtspiAccessible * obj)
        }
        case ATSPI_ROLE_POPUP_MENU: {
                AtspiAccessible *parent = atspi_accessible_get_parent(obj, NULL);
-               int children_count = atspi_accessible_get_child_count(parent, NULL);
+               AtspiRole parent_role = atspi_accessible_get_role(parent, NULL);
+               int children_count;
                char trait[HOVERSEL_TRAIT_SIZE];
+               if (parent_role == ATSPI_ROLE_COMBO_BOX)
+                       children_count = atspi_accessible_get_child_count(parent, NULL);
+               else
+                       children_count = atspi_accessible_get_child_count(obj, NULL);
 
                snprintf(trait, HOVERSEL_TRAIT_SIZE, _("IDS_TRAIT_CTX_POPUP"));
                strncat(ret, trait, sizeof(ret) - strlen(ret) - 1);