X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Fdevel-api%2Fcontrols%2Faccessible-impl.cpp;h=a962abfeaa555de9abe5f16bedc42e1ab50b0184;hb=refs%2Fchanges%2F09%2F267109%2F2;hp=1cf9a2697b8ab4d6663d75c1a87d29c15c9d5320;hpb=f382cfe22850eb6a81d15da5c59401670d9c4646;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/devel-api/controls/accessible-impl.cpp b/dali-toolkit/devel-api/controls/accessible-impl.cpp index 1cf9a26..a962abf 100644 --- a/dali-toolkit/devel-api/controls/accessible-impl.cpp +++ b/dali-toolkit/devel-api/controls/accessible-impl.cpp @@ -536,12 +536,23 @@ std::vector AccessibleImpl::GetRelationSet() std::vector ret; - auto& relation = controlImpl.mAccessibilityRelations; - for(auto i = 0u; i < relation.size(); ++i) + auto& relations = controlImpl.mAccessibilityRelations; + for(auto i = 0u; i < relations.size(); ++i) { - if(relation[i].empty()) continue; + auto& relation = relations[i]; - ret.emplace_back(Accessibility::Relation{static_cast(i), relation[i]}); + if(relation.empty()) + { + continue; + } + + // Map every Accessible* to its Address + std::vector targets; + std::transform(relation.begin(), relation.end(), std::back_inserter(targets), [](auto* x) { + return x->GetAddress(); + }); + + ret.emplace_back(Accessibility::Relation{static_cast(i), std::move(targets)}); } return ret;