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.accessibilityservice; 18 19 import android.accessibilityservice.IAccessibilityServiceConnection; 20 import android.graphics.Region; 21 import android.view.accessibility.AccessibilityEvent; 22 import android.view.accessibility.AccessibilityWindowInfo; 23 import android.accessibilityservice.AccessibilityGestureEvent; 24 import android.accessibilityservice.MagnificationConfig; 25 import android.view.KeyEvent; 26 import android.view.MotionEvent; 27 import android.view.inputmethod.EditorInfo; 28 import com.android.internal.inputmethod.IAccessibilityInputMethodSession; 29 import com.android.internal.inputmethod.IAccessibilityInputMethodSessionCallback; 30 import com.android.internal.inputmethod.IRemoteAccessibilityInputConnection; 31 32 /** 33 * Top-level interface to an accessibility service component. 34 * 35 * @hide 36 */ 37 oneway interface IAccessibilityServiceClient { 38 init(in IAccessibilityServiceConnection connection, int connectionId, IBinder windowToken)39 void init(in IAccessibilityServiceConnection connection, int connectionId, IBinder windowToken); 40 onAccessibilityEvent(in AccessibilityEvent event, in boolean serviceWantsEvent)41 void onAccessibilityEvent(in AccessibilityEvent event, in boolean serviceWantsEvent); 42 onInterrupt()43 void onInterrupt(); 44 onGesture(in AccessibilityGestureEvent gestureEvent)45 void onGesture(in AccessibilityGestureEvent gestureEvent); 46 clearAccessibilityCache()47 void clearAccessibilityCache(); 48 onKeyEvent(in KeyEvent event, int sequence)49 void onKeyEvent(in KeyEvent event, int sequence); 50 onMagnificationChanged(int displayId, in Region region, in MagnificationConfig config)51 void onMagnificationChanged(int displayId, in Region region, in MagnificationConfig config); 52 onMotionEvent(in MotionEvent event)53 void onMotionEvent(in MotionEvent event); 54 onTouchStateChanged(int displayId, int state)55 void onTouchStateChanged(int displayId, int state); 56 onSoftKeyboardShowModeChanged(int showMode)57 void onSoftKeyboardShowModeChanged(int showMode); 58 onPerformGestureResult(int sequence, boolean completedSuccessfully)59 void onPerformGestureResult(int sequence, boolean completedSuccessfully); 60 onFingerprintCapturingGesturesChanged(boolean capturing)61 void onFingerprintCapturingGesturesChanged(boolean capturing); 62 onFingerprintGesture(int gesture)63 void onFingerprintGesture(int gesture); 64 onAccessibilityButtonClicked(int displayId)65 void onAccessibilityButtonClicked(int displayId); 66 onAccessibilityButtonAvailabilityChanged(boolean available)67 void onAccessibilityButtonAvailabilityChanged(boolean available); 68 onSystemActionsChanged()69 void onSystemActionsChanged(); 70 createImeSession(in IAccessibilityInputMethodSessionCallback callback)71 void createImeSession(in IAccessibilityInputMethodSessionCallback callback); 72 setImeSessionEnabled(in IAccessibilityInputMethodSession session, boolean enabled)73 void setImeSessionEnabled(in IAccessibilityInputMethodSession session, boolean enabled); 74 bindInput()75 void bindInput(); 76 unbindInput()77 void unbindInput(); 78 startInput(in IRemoteAccessibilityInputConnection connection, in EditorInfo editorInfo, boolean restarting)79 void startInput(in IRemoteAccessibilityInputConnection connection, in EditorInfo editorInfo, 80 boolean restarting); 81 } 82