1 /*
2 ** Copyright 2009, 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.accessibilityservice.AccessibilityServiceInfo;
20 import android.accessibilityservice.IAccessibilityServiceConnection;
21 import android.accessibilityservice.IAccessibilityServiceClient;
22 import android.content.ComponentName;
23 import android.view.accessibility.AccessibilityEvent;
24 import android.view.accessibility.AccessibilityNodeInfo;
25 import android.view.accessibility.IAccessibilityInteractionConnection;
26 import android.view.accessibility.IAccessibilityManagerClient;
27 import android.view.IWindow;
28 
29 /**
30  * Interface implemented by the AccessibilityManagerService called by
31  * the AccessibilityManagers.
32  *
33  * @hide
34  */
35 interface IAccessibilityManager {
36 
interrupt(int userId)37     oneway void interrupt(int userId);
38 
sendAccessibilityEvent(in AccessibilityEvent uiEvent, int userId)39     oneway void sendAccessibilityEvent(in AccessibilityEvent uiEvent, int userId);
40 
addClient(IAccessibilityManagerClient client, int userId)41     long addClient(IAccessibilityManagerClient client, int userId);
42 
getInstalledAccessibilityServiceList(int userId)43     List<AccessibilityServiceInfo> getInstalledAccessibilityServiceList(int userId);
44 
45     @UnsupportedAppUsage
getEnabledAccessibilityServiceList(int feedbackType, int userId)46     List<AccessibilityServiceInfo> getEnabledAccessibilityServiceList(int feedbackType, int userId);
47 
addAccessibilityInteractionConnection(IWindow windowToken, in IAccessibilityInteractionConnection connection, String packageName, int userId)48     int addAccessibilityInteractionConnection(IWindow windowToken,
49             in IAccessibilityInteractionConnection connection,
50             String packageName, int userId);
51 
removeAccessibilityInteractionConnection(IWindow windowToken)52     void removeAccessibilityInteractionConnection(IWindow windowToken);
53 
setPictureInPictureActionReplacingConnection( in IAccessibilityInteractionConnection connection)54     void setPictureInPictureActionReplacingConnection(
55             in IAccessibilityInteractionConnection connection);
56 
registerUiTestAutomationService(IBinder owner, IAccessibilityServiceClient client, in AccessibilityServiceInfo info, int flags)57     void registerUiTestAutomationService(IBinder owner, IAccessibilityServiceClient client,
58         in AccessibilityServiceInfo info, int flags);
59 
unregisterUiTestAutomationService(IAccessibilityServiceClient client)60     void unregisterUiTestAutomationService(IAccessibilityServiceClient client);
61 
temporaryEnableAccessibilityStateUntilKeyguardRemoved(in ComponentName service, boolean touchExplorationEnabled)62     void temporaryEnableAccessibilityStateUntilKeyguardRemoved(in ComponentName service,
63             boolean touchExplorationEnabled);
64 
getWindowToken(int windowId, int userId)65     IBinder getWindowToken(int windowId, int userId);
66 
notifyAccessibilityButtonClicked(int displayId)67     void notifyAccessibilityButtonClicked(int displayId);
68 
notifyAccessibilityButtonVisibilityChanged(boolean available)69     void notifyAccessibilityButtonVisibilityChanged(boolean available);
70 
71     // Requires Manifest.permission.MANAGE_ACCESSIBILITY
performAccessibilityShortcut()72     void performAccessibilityShortcut();
73 
74     // Requires Manifest.permission.MANAGE_ACCESSIBILITY
getAccessibilityShortcutService()75     String getAccessibilityShortcutService();
76 
77     // System process only
sendFingerprintGesture(int gestureKeyCode)78     boolean sendFingerprintGesture(int gestureKeyCode);
79 
80     // System process only
getAccessibilityWindowId(IBinder windowToken)81     int getAccessibilityWindowId(IBinder windowToken);
82 
getRecommendedTimeoutMillis()83     long getRecommendedTimeoutMillis();
84 }
85