Add viewIsDescendantOf for UIManager on Android

Summary:
Add the ability for UIManager to check if a node is an ancestor of anther one on Android like #7876 did on iOS
Closes https://github.com/facebook/react-native/pull/13129

Differential Revision: D4938319

Pulled By: hramos

fbshipit-source-id: abe20779be2142a1ea9ac46f52d8cd8609236419
This commit is contained in:
Swordsman-Inaction
2017-05-23 10:54:39 -07:00
committed by Facebook Github Bot
parent 2d1c721fd6
commit 663df57c62
3 changed files with 44 additions and 0 deletions

View File

@@ -452,6 +452,23 @@ public class ReactShadowNode {
return mTotalNativeChildren;
}
public boolean isDescendantOf(ReactShadowNode ancestorNode) {
ReactShadowNode parentNode = getParent();
boolean isDescendant = false;
while (parentNode != null) {
if (parentNode == ancestorNode) {
isDescendant = true;
break;
} else {
parentNode = parentNode.getParent();
}
}
return isDescendant;
}
/**
* Returns the offset within the native children owned by all layout-only nodes in the subtree
* rooted at this node for the given child. Put another way, this returns the number of native