diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-03-31 01:09:35 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-03-31 01:09:35 +0000 |
commit | 81fb8404c60ae3e20d377a9f4ee9fc8173c7f09a (patch) | |
tree | 5e6e393b2123114d919c401c5df2e78adb9ab92f | |
parent | 669ec774c26edcb6337d1f74b79ed1bc476b4096 (diff) | |
parent | 0bc7202d15eda058cf4fd2d3f5bfc334b96e7180 (diff) | |
download | TV-81fb8404c60ae3e20d377a9f4ee9fc8173c7f09a.tar.gz |
Snap for 8385883 from 0bc7202d15eda058cf4fd2d3f5bfc334b96e7180 to tm-release
Change-Id: Ia5ffac6b7ff771f583a2d9f6f9e1c0d4451696c1
-rw-r--r-- | src/com/android/tv/menu/MenuRowView.java | 3 | ||||
-rw-r--r-- | src/com/android/tv/menu/MenuView.java | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/com/android/tv/menu/MenuRowView.java b/src/com/android/tv/menu/MenuRowView.java index e09a4ef0..27554c22 100644 --- a/src/com/android/tv/menu/MenuRowView.java +++ b/src/com/android/tv/menu/MenuRowView.java @@ -95,7 +95,8 @@ public abstract class MenuRowView extends LinearLayout { @Override public void sendAccessibilityEvent(View host, int eventType) { super.sendAccessibilityEvent(host, eventType); - if (eventType == AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED && + if ((eventType == AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED || + eventType == AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED) && !mRow.isReselected()) { requestChildFocus(); } diff --git a/src/com/android/tv/menu/MenuView.java b/src/com/android/tv/menu/MenuView.java index add4a774..e1a3379c 100644 --- a/src/com/android/tv/menu/MenuView.java +++ b/src/com/android/tv/menu/MenuView.java @@ -25,6 +25,8 @@ import android.view.View; import android.view.ViewParent; import android.view.ViewTreeObserver.OnGlobalFocusChangeListener; import android.view.ViewTreeObserver.OnGlobalLayoutListener; +import android.view.accessibility.AccessibilityEvent; +import android.view.accessibility.AccessibilityManager; import android.widget.FrameLayout; import com.android.tv.menu.Menu.MenuShowReason; import java.util.ArrayList; @@ -192,7 +194,12 @@ public class MenuView extends FrameLayout implements IMenuView { protected boolean onRequestFocusInDescendants(int direction, Rect previouslyFocusedRect) { int selectedPosition = mLayoutManager.getSelectedPosition(); // When the menu shows up, the selected row should have focus. + AccessibilityManager mAccessibilityManager = + getContext().getSystemService(AccessibilityManager.class); if (selectedPosition >= 0 && selectedPosition < mMenuRowViews.size()) { + if(mAccessibilityManager.isEnabled()) + mMenuRowViews.get(selectedPosition) + .sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED); return mMenuRowViews.get(selectedPosition).requestFocus(); } return super.onRequestFocusInDescendants(direction, previouslyFocusedRect); |