| 6 | namespace ValdiAndroid { |
| 7 | |
| 8 | void AccessibilityBridge::walkViewNode(Valdi::ViewNode* viewNode, std::vector<Valdi::Value>& values, float pointScale) { |
| 9 | // If the view node is an accessibility leaf, its children must not be fetched |
| 10 | if (viewNode->isAccessibilityLeaf()) { |
| 11 | AccessibilityBridge::writeInt32(0, values); |
| 12 | return; |
| 13 | } |
| 14 | // Otherwise, treat the current node as a container, and recurse |
| 15 | auto childrenViewNode = viewNode->getAccessibilityChildrenRecursive(); |
| 16 | AccessibilityBridge::writeInt32(static_cast<int32_t>(childrenViewNode.size()), values); |
| 17 | for (Valdi::ViewNode* childViewNode : childrenViewNode) { |
| 18 | AccessibilityBridge::writeViewNode(childViewNode, values, pointScale); |
| 19 | AccessibilityBridge::walkViewNode(childViewNode, values, pointScale); |
| 20 | } |
| 21 | } |
| 22 | |
| 23 | void AccessibilityBridge::writeInt64(int64_t value, std::vector<Valdi::Value>& values) { |
| 24 | values.emplace_back(value); |
nothing calls this directly
no test coverage detected