Merge "Revert^2 "Add a11y focus on battery chart a11y node."" into main

This commit is contained in:
YK Hung
2024-05-24 04:15:05 +00:00
committed by Android (Google) Code Review

View File

@@ -767,6 +767,10 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
}
private class BatteryChartAccessibilityNodeProvider extends AccessibilityNodeProvider {
private static final int UNDEFINED = Integer.MIN_VALUE;
private int mAccessibilityFocusNodeViewId = UNDEFINED;
@Override
public AccessibilityNodeInfo createAccessibilityNodeInfo(int virtualViewId) {
if (virtualViewId == AccessibilityNodeProvider.HOST_VIEW_ID) {
@@ -794,6 +798,7 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
R.string.battery_usage_time_info_and_battery_level,
slotTimeInfo,
batteryLevelInfo));
childInfo.setAccessibilityFocused(virtualViewId == mAccessibilityFocusNodeViewId);
final Rect bounds = new Rect();
getBoundsOnScreen(bounds, true);
@@ -815,10 +820,14 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
return true;
case AccessibilityNodeInfo.ACTION_ACCESSIBILITY_FOCUS:
mAccessibilityFocusNodeViewId = virtualViewId;
return sendAccessibilityEvent(
virtualViewId, AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED);
case AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS:
if (mAccessibilityFocusNodeViewId == virtualViewId) {
mAccessibilityFocusNodeViewId = UNDEFINED;
}
return sendAccessibilityEvent(
virtualViewId,
AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED);