Java Code Examples for android.view.accessibility.AccessibilityNodeInfo#isFocusable()
The following examples show how to use
android.view.accessibility.AccessibilityNodeInfo#isFocusable() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: AccessibilityNodeTree.java From SoloPi with Apache License 2.0 | 5 votes |
private void initAccessibilityNodeInfo(AccessibilityNodeInfo info) { this.className = StringUtil.nonNullString(info.getClassName()); this.packageName = StringUtil.nonNullString(info.getPackageName()); this.resourceId = info.getViewIdResourceName(); this.text = StringUtil.nonNullString(info.getText()); this.description = StringUtil.nonNullString(info.getContentDescription()); Rect rect = new Rect(); info.getBoundsInScreen(rect); this.nodeBound = rect; this.isScrollable = info.isScrollable(); this.visible = info.isVisibleToUser(); this.isClickable = info.isClickable(); this.isFocusable = info.isFocusable(); this.isEditable = info.isEditable(); }
Example 2
Source File: UiObject.java From za-Farmer with MIT License | 5 votes |
/** * Check if the UI element's <code>focusable</code> property is currently true. * * @return true if it is else false * @throws UiObjectNotFoundException * @since API Level 16 */ public boolean isFocusable() throws UiObjectNotFoundException { Tracer.trace(); AccessibilityNodeInfo node = findAccessibilityNodeInfo(mConfig.getWaitForSelectorTimeout()); if(node == null) { throw new UiObjectNotFoundException(mUiSelector.toString()); } return node.isFocusable(); }
Example 3
Source File: UiObject.java From JsDroidCmd with Mozilla Public License 2.0 | 5 votes |
/** * Check if the UI element's <code>focusable</code> property is currently true. * * @return true if it is else false * @throws UiObjectNotFoundException * @since API Level 16 */ public boolean isFocusable() throws UiObjectNotFoundException { Tracer.trace(); AccessibilityNodeInfo node = findAccessibilityNodeInfo(mConfig.getWaitForSelectorTimeout()); if(node == null) { throw new UiObjectNotFoundException(mUiSelector.toString()); } return node.isFocusable(); }
Example 4
Source File: AccessibilityNodeInfoDumper.java From JsDroidCmd with Mozilla Public License 2.0 | 5 votes |
public static void dumpNode(AccessibilityNodeInfo info, Node root, int index, int width, int height) { root.sourceId = info.getSourceNodeId(); root.index = index; root.text = safeCharSeqToString(info.getText()); root.res = safeCharSeqToString(info.getViewIdResourceName()); root.clazz = safeCharSeqToString(info.getClassName()); root.pkg = safeCharSeqToString(info.getPackageName()); root.desc = safeCharSeqToString(info.getContentDescription()); root.checkable = info.isCheckable(); root.checked = info.isChecked(); root.clickable = info.isClickable(); root.enabled = info.isEnabled(); root.focusable = info.isFocusable(); root.focused = info.isFocused(); root.scrollable = info.isScrollable(); root.longClickable = info.isLongClickable(); root.password = info.isPassword(); root.selected = info.isSelected(); android.graphics.Rect r = AccessibilityNodeInfoHelper .getVisibleBoundsInScreen(info, width, height); root.rect = new Rect(r.left, r.top, r.right, r.bottom); root.children = new ArrayList<Node>(); int count = info.getChildCount(); for (int i = 0; i < count; i++) { AccessibilityNodeInfo child = info.getChild(i); if (child != null) { if (child.isVisibleToUser()) { Node childNode = new Node(); dumpNode(child, childNode, i, width, height); root.children.add(childNode); child.recycle(); } } } }
Example 5
Source File: NodesInfo.java From Anti-recall with GNU Affero General Public License v3.0 | 5 votes |
private static String print(AccessibilityNodeInfo nodeInfo) { if (nodeInfo == null) return ""; CharSequence text = nodeInfo.getText(); CharSequence description = nodeInfo.getContentDescription(); CharSequence className = nodeInfo.getClassName(); CharSequence packageName = nodeInfo.getPackageName(); boolean focusable = nodeInfo.isFocusable(); boolean clickable = nodeInfo.isClickable(); Rect rect = new Rect(); nodeInfo.getBoundsInScreen(rect); String viewId = nodeInfo.getViewIdResourceName(); return "| " + "text: " + text + " \t" + "description: " + description + " \t" + String.format("%-40s", "ID: " + viewId) + " \t" + String.format("%-40s", "class: " + className) + " \t" + String.format("%-30s", "location: " + rect) + " \t" // + "focusable: " + focusable + " \t" // + "clickable: " + clickable + " \t" // + String.format("%-30s", "package: " + packageName) + " \t" ; }
Example 6
Source File: ViewHierarchyElementAndroid.java From Accessibility-Test-Framework-for-Android with Apache License 2.0 | 4 votes |
Builder(int id, @Nullable ViewHierarchyElementAndroid parent, AccessibilityNodeInfo fromInfo) { // Bookkeeping this.id = id; this.parentId = (parent != null) ? parent.getId() : null; // API 18+ properties this.resourceName = AT_18 ? fromInfo.getViewIdResourceName() : null; this.editable = AT_18 ? fromInfo.isEditable() : null; // API 16+ properties this.visibleToUser = AT_16 ? fromInfo.isVisibleToUser() : null; // API 21+ properties if (AT_21) { ImmutableList.Builder<ViewHierarchyActionAndroid> actionBuilder = new ImmutableList.Builder<>(); actionBuilder.addAll( Lists.transform( fromInfo.getActionList(), action -> ViewHierarchyActionAndroid.newBuilder(action).build())); this.actionList = actionBuilder.build(); } // API 24+ properties this.drawingOrder = AT_24 ? fromInfo.getDrawingOrder() : null; // API 29+ properties this.hasTouchDelegate = AT_29 ? (fromInfo.getTouchDelegateInfo() != null) : null; // Base properties this.className = fromInfo.getClassName(); this.packageName = fromInfo.getPackageName(); this.accessibilityClassName = fromInfo.getClassName(); this.contentDescription = SpannableStringAndroid.valueOf(fromInfo.getContentDescription()); this.text = SpannableStringAndroid.valueOf(fromInfo.getText()); this.importantForAccessibility = true; this.clickable = fromInfo.isClickable(); this.longClickable = fromInfo.isLongClickable(); this.focusable = fromInfo.isFocusable(); this.scrollable = fromInfo.isScrollable(); this.canScrollForward = ((fromInfo.getActions() & AccessibilityNodeInfo.ACTION_SCROLL_FORWARD) != 0); this.canScrollBackward = ((fromInfo.getActions() & AccessibilityNodeInfo.ACTION_SCROLL_BACKWARD) != 0); this.checkable = fromInfo.isCheckable(); this.checked = fromInfo.isChecked(); this.touchDelegateBounds = new ArrayList<>(); // Populated after construction android.graphics.Rect tempRect = new android.graphics.Rect(); fromInfo.getBoundsInScreen(tempRect); this.boundsInScreen = new Rect(tempRect.left, tempRect.top, tempRect.right, tempRect.bottom); this.nonclippedHeight = null; this.nonclippedWidth = null; this.textSize = null; this.textColor = null; this.backgroundDrawableColor = null; this.typefaceStyle = null; this.enabled = fromInfo.isEnabled(); }