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 17 package android.view.accessibility; 18 19 import android.view.accessibility.AccessibilityNodeInfo; 20 import java.util.List; 21 22 /** 23 * Callback for specifying the result for an asynchronous request made 24 * via calling a method on IAccessibilityInteractionConnectionCallback. 25 * 26 * @hide 27 */ 28 oneway interface IAccessibilityInteractionConnectionCallback { 29 30 /** 31 * Sets the result of an async request that returns an {@link AccessibilityNodeInfo}. 32 * 33 * @param infos The result {@link AccessibilityNodeInfo}. 34 * @param interactionId The interaction id to match the result with the request. 35 */ 36 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) 37 @RequiresNoPermission setFindAccessibilityNodeInfoResult(in AccessibilityNodeInfo info, int interactionId)38 void setFindAccessibilityNodeInfoResult(in AccessibilityNodeInfo info, int interactionId); 39 40 /** 41 * Sets the result of an async request that returns {@link AccessibilityNodeInfo}s. 42 * 43 * @param infos The result {@link AccessibilityNodeInfo}s. 44 * @param interactionId The interaction id to match the result with the request. 45 */ 46 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) 47 @RequiresNoPermission setFindAccessibilityNodeInfosResult(in List<AccessibilityNodeInfo> infos, int interactionId)48 void setFindAccessibilityNodeInfosResult(in List<AccessibilityNodeInfo> infos, 49 int interactionId); 50 51 /** 52 * Sets the result of a prefetch request that returns {@link AccessibilityNodeInfo}s. 53 * 54 * @param root The {@link AccessibilityNodeInfo} for which the prefetching is based off of. 55 * @param infos The result {@link AccessibilityNodeInfo}s. 56 */ 57 @RequiresNoPermission setPrefetchAccessibilityNodeInfoResult( in List<AccessibilityNodeInfo> infos, int interactionId)58 void setPrefetchAccessibilityNodeInfoResult( 59 in List<AccessibilityNodeInfo> infos, int interactionId); 60 61 /** 62 * Sets the result of a request to perform an accessibility action. 63 * 64 * @param Whether the action was performed. 65 * @param interactionId The interaction id to match the result with the request. 66 */ 67 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) 68 @RequiresNoPermission setPerformAccessibilityActionResult(boolean succeeded, int interactionId)69 void setPerformAccessibilityActionResult(boolean succeeded, int interactionId); 70 71 /** 72 * Sends an error code for a window screenshot request to the requesting client. 73 */ 74 @RequiresNoPermission sendTakeScreenshotOfWindowError(int errorCode, int interactionId)75 void sendTakeScreenshotOfWindowError(int errorCode, int interactionId); 76 77 /** 78 * Sends an result code for an attach overlay request to the requesting client. 79 */ 80 @RequiresNoPermission sendAttachOverlayResult(int result, int interactionId)81 void sendAttachOverlayResult(int result, int interactionId); 82 } 83