From faeb033afc5ddce3c193895436b56f07df3db3f9 Mon Sep 17 00:00:00 2001 From: YK Hung Date: Thu, 23 May 2024 14:32:52 +0000 Subject: [PATCH] Revert^2 "Add a11y focus on battery chart a11y node." This reverts commit 25ef484675d8f58434d13873626c7bc92e5e338d. Reason for revert: I don't think the UI update will impact the codec test in b/342336993, which should be the false alarm. The codec test even not relative to the accessibility function. Change-Id: I4c2e00667f229d8df8664e8cef5bee06f4468fdc --- .../fuelgauge/batteryusage/BatteryChartView.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java index 37d2fceece2..4acaeeaf5bb 100644 --- a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java +++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartView.java @@ -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);