Implement ACTION_LONG_CLICK for accessibility
Due to changes in R, the a11y framework no longer dispatches touch events for a long press. This prevents the activation of EditText's floating menu. We can re-enable it by implementing the proper a11y action ACTION_LONG_CLICK. The menu itself is diffult to access through TalkBack's linear navigation, but this is future work for a separate known issue. Start and stop the menu for editable TextViews, which includes EditTexts. Since touch events are no longer sent by a11y, separate the accessibility handling from the touch handling infrastructure for long clicks in Editor. We can't go through the main performLongClick code because it doesn't actually start the action mode but rather sets pending, which routes back to TextView. There's too little separation between the touch events and action logic. Whoever touches the performLongClick code may need to also make corresponding changes to the a11y path, but I suspect this won't happen often. Remove the onInitializeA11yNodeInfo override for EditText because this is handled by TextView. Bug: 148127445 Test: Tested text fields in various apps. ag/10602004. atest FrameworksCoreTests:TextViewActivityTest#testToolbarAppearsAccessibilityLongClick Change-Id: I3958e5b80e6156e03c99335e0d0b671438965ebb (cherry picked from commit 3f1203fb) Merged-In: I3958e5b80e6156e03c99335e0d0b671438965ebb
Loading
Please register or sign in to comment