android.view.accessibility.AccessibilityNodeInfo#equals ( )源码实例Demo

下面列出了android.view.accessibility.AccessibilityNodeInfo#equals ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: oversec   文件: AccessibilityNodeInfoUtils.java
private static AccessibilityNodeInfo refreshFromChild(
        AccessibilityNodeInfo node) {
    if (node.getChildCount() > 0) {
        AccessibilityNodeInfo firstChild = node.getChild(0);
        if (firstChild != null) {
            AccessibilityNodeInfo parent = firstChild.getParent();
            firstChild.recycle();
            if (node.equals(parent)) {
                return parent;
            } else {
                recycleNodes(parent);
            }
        }
    }
    return null;
}
 
源代码2 项目: oversec   文件: AccessibilityNodeInfoUtils.java
private static AccessibilityNodeInfo refreshFromParent(
        AccessibilityNodeInfo node) {
    AccessibilityNodeInfo parent = node.getParent();
    if (parent != null) {
        try {
            int childCount = parent.getChildCount();
            for (int i = 0; i < childCount; ++i) {
                AccessibilityNodeInfo child = parent.getChild(i);
                if (node.equals(child)) {
                    return child;
                }
                recycleNodes(child);
            }
        } finally {
            parent.recycle();
        }
    }
    return null;
}
 
源代码3 项目: talkback   文件: WindowManager.java
/** Gets the window whose anchor equals the given node. */
public @Nullable AccessibilityWindowInfo getAnchoredWindow(
    @Nullable AccessibilityNodeInfoCompat targetAnchor) {
  if (!BuildVersionUtils.isAtLeastN() || targetAnchor == null) {
    return null;
  }

  int windowCount = mWindows.size();
  for (int i = 0; i < windowCount; ++i) {
    AccessibilityWindowInfo window = mWindows.get(i);
    if (window != null) {
      AccessibilityNodeInfo anchor = window.getAnchor();
      if (anchor != null) {
        try {
          if (anchor.equals(targetAnchor.unwrap())) {
            return window;
          }
        } finally {
          anchor.recycle();
        }
      }
    }
  }

  return null;
}
 
源代码4 项目: brailleback   文件: TreeDebugNavigationMode.java
private AccessibilityNodeInfo getPreviousSibling(
    AccessibilityNodeInfo from) {
    AccessibilityNodeInfo ret = null;
    AccessibilityNodeInfo parent = from.getParent();
    if (parent == null) {
        return null;
    }
    AccessibilityNodeInfo prev = null;
    AccessibilityNodeInfo cur = null;
    try {
        int childCount = parent.getChildCount();
        for (int i = 0; i < childCount; ++i) {
            cur = parent.getChild(i);
            if (cur == null) {
                return null;
            }
            if (cur.equals(from)) {
                ret = prev;
                prev = null;
                return ret;
            }
            if (prev != null) {
                prev.recycle();
            }
            prev = cur;
            cur = null;
        }
    } finally {
        parent.recycle();
        if (prev != null) {
            prev.recycle();
        }
        if (cur != null) {
            cur.recycle();
        }
    }
    return ret;
}
 
源代码5 项目: brailleback   文件: TreeDebugNavigationMode.java
private AccessibilityNodeInfo getNextSibling(
    AccessibilityNodeInfo from) {
    AccessibilityNodeInfo parent = from.getParent();
    if (parent == null) {
        return null;
    }
    AccessibilityNodeInfo cur = null;
    try {
        int childCount = parent.getChildCount();
        for (int i = 0; i < childCount - 1; ++i) {
            cur = parent.getChild(i);
            if (cur == null) {
                return null;
            }
            if (cur.equals(from)) {
                return parent.getChild(i + 1);
            }
            if (cur != null) {
                cur.recycle();
                cur = null;
            }
        }
    } finally {
        parent.recycle();
        if (cur != null) {
            cur.recycle();
        }
    }
    return null;
}
 
源代码6 项目: talkback   文件: TextEventInterpreter.java
protected boolean sourceEqualsLastNode(AccessibilityEvent event) {
  AccessibilityNodeInfo source = null;
  try {
    source = event.getSource();
    AccessibilityNodeInfo lastNode = mHistory.getLastNode();
    return (source != null) && lastNode != null && source.equals(lastNode);
  } finally {
    AccessibilityNodeInfoUtils.recycleNodes(source);
  }
}