AccessibilityNodeInfoCompatIcs.java revision bac71fc7d45be2f6b30d2a8dcac9304f42890f49
1/* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17package android.support.v4.view.accessibility; 18 19import android.graphics.Rect; 20import android.text.TextUtils; 21import android.view.View; 22import android.view.accessibility.AccessibilityNodeInfo; 23 24import java.util.HashMap; 25import java.util.List; 26 27/** 28 * ICS specific AccessibilityNodeInfo API implementation. 29 */ 30class AccessibilityNodeInfoCompatIcs { 31 public static Object obtain() { 32 return AccessibilityNodeInfo.obtain(); 33 } 34 35 public static Object obtain(View source) { 36 return AccessibilityNodeInfo.obtain(source); 37 } 38 39 public static Object obtain(Object info) { 40 return AccessibilityNodeInfo.obtain((AccessibilityNodeInfo) info); 41 } 42 43 public static void addAction(Object info, int action) { 44 ((AccessibilityNodeInfo) info).addAction(action); 45 } 46 47 public static void addChild(Object info, View child) { 48 ((AccessibilityNodeInfo) info).addChild(child); 49 } 50 51 @SuppressWarnings("unchecked") 52 public static List<Object> findAccessibilityNodeInfosByText(Object info, String text) { 53 Object result = ((AccessibilityNodeInfo) info).findAccessibilityNodeInfosByText(text); 54 return (List<Object>) result; 55 } 56 57 public static int getActions(Object info) { 58 return ((AccessibilityNodeInfo) info).getActions(); 59 } 60 61 public static void getBoundsInParent(Object info, Rect outBounds) { 62 ((AccessibilityNodeInfo) info).getBoundsInParent(outBounds); 63 } 64 65 public static void getBoundsInScreen(Object info, Rect outBounds) { 66 ((AccessibilityNodeInfo) info).getBoundsInScreen(outBounds); 67 } 68 69 public static Object getChild(Object info, int index) { 70 return ((AccessibilityNodeInfo) info).getChild(index); 71 } 72 73 public static int getChildCount(Object info) { 74 return ((AccessibilityNodeInfo) info).getChildCount(); 75 } 76 77 public static CharSequence getClassName(Object info) { 78 return ((AccessibilityNodeInfo) info).getClassName(); 79 } 80 81 public static CharSequence getContentDescription(Object info) { 82 return ((AccessibilityNodeInfo) info).getContentDescription(); 83 } 84 85 public static CharSequence getPackageName(Object info) { 86 return ((AccessibilityNodeInfo) info).getPackageName(); 87 } 88 89 public static Object getParent(Object info) { 90 return ((AccessibilityNodeInfo) info).getParent(); 91 } 92 93 public static CharSequence getText(Object info) { 94 return ((AccessibilityNodeInfo) info).getText(); 95 } 96 97 public static int getWindowId(Object info) { 98 return ((AccessibilityNodeInfo) info).getWindowId(); 99 } 100 101 public static boolean isCheckable(Object info) { 102 return ((AccessibilityNodeInfo) info).isCheckable(); 103 } 104 105 public static boolean isChecked(Object info) { 106 return ((AccessibilityNodeInfo) info).isChecked(); 107 } 108 109 public static boolean isClickable(Object info) { 110 return ((AccessibilityNodeInfo) info).isClickable(); 111 } 112 113 public static boolean isEnabled(Object info) { 114 return ((AccessibilityNodeInfo) info).isEnabled(); 115 } 116 117 public static boolean isFocusable(Object info) { 118 return ((AccessibilityNodeInfo) info).isFocusable(); 119 } 120 121 public static boolean isFocused(Object info) { 122 return ((AccessibilityNodeInfo) info).isFocused(); 123 } 124 125 public static boolean isLongClickable(Object info) { 126 return ((AccessibilityNodeInfo) info).isLongClickable(); 127 } 128 129 public static boolean isPassword(Object info) { 130 return ((AccessibilityNodeInfo) info).isPassword(); 131 } 132 133 public static boolean isScrollable(Object info) { 134 return ((AccessibilityNodeInfo) info).isScrollable(); 135 } 136 137 public static boolean isSelected(Object info) { 138 return ((AccessibilityNodeInfo) info).isSelected(); 139 } 140 141 public static boolean performAction(Object info, int action) { 142 return ((AccessibilityNodeInfo) info).performAction(action); 143 } 144 145 public static void setBoundsInParent(Object info, Rect bounds) { 146 ((AccessibilityNodeInfo) info).setBoundsInParent(bounds); 147 } 148 149 public static void setBoundsInScreen(Object info, Rect bounds) { 150 ((AccessibilityNodeInfo) info).setBoundsInScreen(bounds); 151 } 152 153 public static void setCheckable(Object info, boolean checkable) { 154 ((AccessibilityNodeInfo) info).setCheckable(checkable); 155 } 156 157 public static void setChecked(Object info, boolean checked) { 158 ((AccessibilityNodeInfo) info).setChecked(checked); 159 } 160 161 public static void setClassName(Object info, CharSequence className) { 162 ((AccessibilityNodeInfo) info).setClassName(className); 163 } 164 165 public static void setClickable(Object info, boolean clickable) { 166 ((AccessibilityNodeInfo) info).setClickable(clickable); 167 } 168 169 public static void setContentDescription(Object info, CharSequence contentDescription) { 170 ((AccessibilityNodeInfo) info).setContentDescription(contentDescription); 171 } 172 173 public static void setEnabled(Object info, boolean enabled) { 174 ((AccessibilityNodeInfo) info).setEnabled(enabled); 175 } 176 177 public static void setFocusable(Object info, boolean focusable) { 178 ((AccessibilityNodeInfo) info).setFocusable(focusable); 179 } 180 181 public static void setFocused(Object info, boolean focused) { 182 ((AccessibilityNodeInfo) info).setFocused(focused); 183 } 184 185 public static void setLongClickable(Object info, boolean longClickable) { 186 ((AccessibilityNodeInfo) info).setLongClickable(longClickable); 187 } 188 189 public static void setPackageName(Object info, CharSequence packageName) { 190 ((AccessibilityNodeInfo) info).setPackageName(packageName); 191 } 192 193 public static void setParent(Object info, View parent) { 194 ((AccessibilityNodeInfo) info).setParent(parent); 195 } 196 197 public static void setPassword(Object info, boolean password) { 198 ((AccessibilityNodeInfo) info).setPassword(password); 199 } 200 201 public static void setScrollable(Object info, boolean scrollable) { 202 ((AccessibilityNodeInfo) info).setScrollable(scrollable); 203 } 204 205 public static void setSelected(Object info, boolean selected) { 206 ((AccessibilityNodeInfo) info).setSelected(selected); 207 } 208 209 public static void setSource(Object info, View source) { 210 ((AccessibilityNodeInfo) info).setSource(source); 211 } 212 213 public static void setText(Object info, CharSequence text) { 214 ((AccessibilityNodeInfo) info).setText(text); 215 } 216 217 public static void recycle(Object info) { 218 ((AccessibilityNodeInfo) info).recycle(); 219 } 220 221} 222