mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Added Semantic header support on Android. (flutter/engine#13262)
Added Semantic header support on Android.
This commit is contained in:
parent
b9c225a35d
commit
bb82d46bdb
@ -4,6 +4,7 @@
|
||||
|
||||
package io.flutter.view;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.annotation.TargetApi;
|
||||
import android.content.ContentResolver;
|
||||
import android.database.ContentObserver;
|
||||
@ -489,6 +490,8 @@ public class AccessibilityBridge extends AccessibilityNodeProvider {
|
||||
*/
|
||||
@Override
|
||||
@SuppressWarnings("deprecation")
|
||||
// Supressing Lint warning for new API, as we are version guarding all calls to newer APIs
|
||||
@SuppressLint("NewApi")
|
||||
public AccessibilityNodeInfo createAccessibilityNodeInfo(int virtualViewId) {
|
||||
if (virtualViewId >= MIN_ENGINE_GENERATED_NODE_ID) {
|
||||
// The node is in the engine generated range, and is provided by the accessibility view embedder.
|
||||
@ -753,6 +756,11 @@ public class AccessibilityBridge extends AccessibilityNodeProvider {
|
||||
|
||||
result.setSelected(semanticsNode.hasFlag(Flag.IS_SELECTED));
|
||||
|
||||
// Heading support
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
||||
result.setHeading(semanticsNode.hasFlag(Flag.IS_HEADER));
|
||||
}
|
||||
|
||||
// Accessibility Focus
|
||||
if (accessibilityFocusedSemanticsNode != null && accessibilityFocusedSemanticsNode.id == virtualViewId) {
|
||||
result.addAction(AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user