- int32_t listChildrenCount = 0;
- Accessible* parent = self->GetParent();
- auto parentStateSet = parent ? parent->GetStates() : States{};
- auto parentChildCount = parent ? static_cast<int32_t>(parent->GetChildCount()) : 0;
- auto parentRole = static_cast<uint32_t>(parent ? parent->GetRole() : Role{});
- Accessible* describedByObject = nullptr;
+ auto role = static_cast<uint32_t>(self->GetRole());
+ int32_t listChildrenCount = 0;
+ if(role == static_cast<uint32_t>(Role::DIALOG))
+ {
+ listChildrenCount = GetItemCountOfFirstDescendantList(self);
+ }
+
+ auto* textInterface = dynamic_cast<Dali::Accessibility::Text*>(self);
+ std::string nameFromTextInterface = "";
+ if(textInterface)
+ {
+ nameFromTextInterface = textInterface->GetText(0, textInterface->GetCharacterCount());
+ }
+
+ auto description = self->GetDescription();
+ auto attributes = self->GetAttributes();
+ auto states = self->GetStates();
+ auto name = self->GetName();
+ auto localizedRoleName = self->GetLocalizedRoleName();
+ auto indexInParent = static_cast<int32_t>(self->GetIndexInParent());
+
+ auto parent = self->GetParent();
+ auto parentRole = static_cast<uint32_t>(parent ? parent->GetRole() : Role{});
+ auto parentChildCount = parent ? static_cast<int32_t>(parent->GetChildCount()) : 0;
+ auto parentStateSet = parent ? parent->GetStates() : States{};
+ bool isSelectedInParent = false;
+ auto* parentSelectionInterface = dynamic_cast<Dali::Accessibility::Selection*>(parent);
+ if(parentSelectionInterface)
+ {
+ isSelectedInParent = parentSelectionInterface->IsChildSelected(indexInParent);
+ }