10fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav/* 20fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * Copyright (C) 2013 The Android Open Source Project 30fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * 40fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * Licensed under the Apache License, Version 2.0 (the "License"); 50fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * you may not use this file except in compliance with the License. 60fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * You may obtain a copy of the License at 70fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * 80fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * http://www.apache.org/licenses/LICENSE-2.0 90fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * 100fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * Unless required by applicable law or agreed to in writing, software 110fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * distributed under the License is distributed on an "AS IS" BASIS, 120fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 130fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * See the License for the specific language governing permissions and 140fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav * limitations under the License. 150fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav */ 160fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav 170fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslavpackage android.support.v4.view.accessibility; 180fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav 190fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslavimport android.view.accessibility.AccessibilityNodeInfo; 200fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav 218aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatovimport java.util.List; 228aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 2384bbe6fe39c63a7e67a3ca937981a463c11ac9edScott Mainclass AccessibilityNodeInfoCompatJellybeanMr2 { 240fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav 25071eca0f490d88fc51cea8f739780c7c92b920c3Svetoslav public static void setViewIdResourceName(Object info, String viewId) { 260fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav ((AccessibilityNodeInfo) info).setViewIdResourceName(viewId); 270fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav } 280fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav 29071eca0f490d88fc51cea8f739780c7c92b920c3Svetoslav public static String getViewIdResourceName(Object info) { 300fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav return ((AccessibilityNodeInfo) info).getViewIdResourceName(); 310fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav } 328aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 338aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov @SuppressWarnings("unchecked") 348aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static List<Object> findAccessibilityNodeInfosByViewId(Object info, String viewId) { 358aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov Object result = ((AccessibilityNodeInfo) info).findAccessibilityNodeInfosByViewId(viewId); 368aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov return (List<Object>) result; 378aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 388aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 398aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static void setTextSelection(Object info, int start, int end) { 408aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov ((AccessibilityNodeInfo) info).setTextSelection(start, end); 418aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 428aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 438aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static int getTextSelectionStart(Object info) { 448aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov return ((AccessibilityNodeInfo) info).getTextSelectionStart(); 458aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 468aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 478aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static int getTextSelectionEnd(Object info) { 488aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov return ((AccessibilityNodeInfo) info).getTextSelectionEnd(); 498aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 508aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 518aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static boolean isEditable(Object info) { 528aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov return ((AccessibilityNodeInfo) info).isEditable(); 538aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 548aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 558aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static void setEditable(Object info, boolean editable) { 568aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov ((AccessibilityNodeInfo) info).setEditable(editable); 578aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 588aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov 598aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov public static boolean refresh(Object info) { 608aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov return ((AccessibilityNodeInfo) info).refresh(); 618aaf50bd7d713dafc358e6215111e7b0a43ecc82Maxim Bogatov } 620fc5bd7644f7563f7b59bd1017df9c938857e794Svetoslav} 63