AccessibilityButtonChooserActivity can't get the
extra value to display the corresponding dialog.
Test: manual test
Change-Id: I551416ba206170ca3f21a7ac9537592440c31444
To support embedded hierarchies (leash):
1. Add new APIs for leashed child in AccessibilityNodeInfo.
2. SurfaceView needs to use this API to add such child when
initializing the AccessibilityNodeInfo.
Bug: 137593247
Test: a11y CTS & unit tests
Change-Id: Ieaa57c6ad65f4c199175d929c3bcba7fb7e6ef26
Make accessibility service able to set the current input method
for current user.
Bug: 145710994
Test: atest AccessibilitySoftKeyboardTest
1. Get current enabled IMEs
$ adb shell settings get secure enabled_input_methods
com.google.android.googlequicksearchbox/com.google.android.voicesearch.ime.VoiceInputMethodService
com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME
2. Get current default IME
$ adb shell settings get secure default_input_method
3. Set current default IME
$ adb shell settings put secure default_input_method
com.google.android.googlequicksearchbox/com.google.android.voicesearch.ime.VoiceInputMethodService
Change-Id: I00aa2170ef2fcc4daf50d09a57b8e2ad16c0a6cb
We don't need to confirm that pointers are non-zero in TouchExplorer#onDoubleTapAndHold; it is the job of the gesture matcher and the gesture manifold to prevent weirdness.
Bug: 146997332
Test: atest AccessibilityGestureDetectorTest TouchExplorerTest GestureManifoldTest
Change-Id: I12eb42155c1e55b13840bacea962be4759354214
Some devices will send ACTION_MOVE events with the same coordinates as ACTION_DOWN. If so, we ignore them in order to correctly interpret the rest of the gesture.
Fix: 146472448
Test: Run talkback and swipe in all directions.
Test: atest AccessibilityGestureDetectorTest TouchExplorerTest GestureManifoldTest
Change-Id: I7c6ee32aa64cd9558afef4caf690f822f2541c5b
This includes the following gestures: double-tap, double-tap and hold, one-direction swipes, and two-direction swipes
including angle swipes.
Bug: 142277141
Bug: 136131815
Test: atest AccessibilityGestureDetectorTest TouchExplorerTest GestureManifoldTest
Change-Id: I47089b003ff4e49e96b2833931ec4006131f1bd4
- Adds support for magnification and multiple shortcut targets assigned
to accessibility shortcut key in AccessibilityManagerService.
- New extra field in ACTION_CHOOSE_ACCESSIBILITY_BUTTON intent to
support accessibility shortcut key.
Bug: 136293963
Test: atest AccessibilityShortcutControllerTest
Test: atest AccessibilityUserStateTest
Test: atest AccessibilityShortcutTest
Change-Id: If0a446dfd269e82ec0d09db92e86f859cdae50d8
Implmentation details of Accessibility framework SystemActionPerformer.
Will be accessed by AccessibilityManagerService to provide API
implementation support for system action registration and system action
access.
Bug: 136286274
Test: atest SystemActionPerformerTest
Change-Id: Ic0adbb6fc21d262fb2949f616ca28940fd6f1f53
The accessibility focus node id isn't updated if the focus window id
doesn't change.
Bug: 144958088
Test: a11y CTS & unit tests
Change-Id: I67e57fb036efa4b89c7b5148fb7cef9dbdd37b7b
Set allow app switches so the accessibility service can start activity
without delay.
Bug: 141873810
TEST: atest AccessibilityServiceConnectionTest
Change-Id: I4204c4cf0baa1f66d6d2d73d56a342ae803d24dd
After an accessibility service crashes a few times in a short period
of time, framework would add it into a “blacklist”. User wouldn’t be
able to use (re-enable) it. If users express an intent in them working
again, we remove the crashed accessibility service from the blacklist.
Bug: 129689483
Test: a11y CTS & unit tests
Test: manual
1. Install and enable an intentional crashed a11y service.
2. After it's crashed and malfunctioning, re-enable it.
3. Check if it's bound again.
Change-Id: Ia89121f11bc5e05fc829e0e3ecb266150409678b
Since we have proper states now this only serves as extra coupling to the gesture detector.
Bug: 136131815
Test: atest CtsAccessibilityTestCases CtsAccessibilityServiceTestCases
Test: atest FrameworksServicesTests:TouchExplorerTest
Change-Id: I3be0f05e6492abad6a79f5167aaa61325dc5e9e6
- New class AccessibilityShortcutInfo to describe accessibility
shortcut.
- New Intent category for the target of accessibility shortcut
Bug: 136293963
Test: atest AccessibilityShortcutInfoTest
Change-Id: Id47d397a03f3f710368550e551097214c7839943
1. Implementing the new API for supporting multi-display.
SparseArray<List<AccessibilityWindowInfo>> getWindowsOnAllDisplays()
2. Modifying the documents of this API and its function is to get the window lists of
default display.
List<AccessibilityWindowInfo> getWindows()
Bug: 133279356
Test: a11y CTS & unit tests
Change-Id: Id4e874f43390bdf4196d106a44bbca18bf9fd1d6
Right now we just send null. This was a todo to be fixed and will mean that the event stream operates consistently.
Bug: 136131815
Test: atest CtsAccessibilityTestCases CtsAccessibilityServiceTestCases
Test: atest FrameworksServicesTests:TouchExplorerTest FrameworksServicesTests:MotionEventInjectorTest
Change-Id: I4578ef4ffe6d3c3e4fc2aa2d06fc0caaa8bb9713
Also combine event-sending code with what used to be the InjectedPointerTracker class because that class was used for sending events anyway.
Bug: 136131815:
Test: atest CtsAccessibilityTestCases CtsAccessibilityServiceTestCases FrameworksServicesTests:TouchExplorerTest
Change-Id: I7fae3dc958642d8fae61b9120c732d27af16fca9
Add a null check before flattening the component name.
Bug: 132345003
Test: Null check. Existing unit tests still pass.
Change-Id: I1df04f97d5cad1cecc503b068e3036913aa46811
The Next-Generation Assistant can call SysUI to request a screenshot.
Adding an indicator that a screenshot has completed successfully enables
the Next-Generation Assistant to show the assistant UI again once the
screenshot has completed.
Bug: 137201206
Bug: 131082115
Test: Wired up SysUIG's NGA integration's touch outside handler to call
take screenshot, confirmed it behaved as expected when a touch outside
occurred.
Change-Id: Ie83af6c9dd8e93b3e18a820d79c02125a19bd62a
1. Passing the correct displayId when calling API,
AccessibilityWindowManager#getWindowListLocked().
(The method, getWindows(), only returns the windows of default display)
2. Passing the correct displayId when calling API,
WindowManagerService#computeWindowsForAccessibility().
Bug: 134891479
Test: a11y CTS & unit tests
Test: manually test talkback AP at second display
Change-Id: I1141521d383f3c3efcf1ee32af54e12d0fcf4231
STATE_CLEAR represents an initial state where no fingers are down. STATE_TOUCH_INTERACTING is where we try to detect the user's intent.
Bug: 136131815
Test: atest CtsAccessibilityServiceTestCases FrameworksServicesTests:TouchExplorerTest
Change-Id: Ifac5ab2556d5d16e6326fec1f92064cb6987b519
Using default instead of private results in an unexpected fail on
FrameworksServicesTests. Change to public to fix it.
Fix: 139853891
Test: a11y CTS & unit tests
Change-Id: I307d4f0da96310c310cbd407249b410608e0d0cd