diff options
| -rw-r--r-- | core/java/android/view/View.java | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 962e13abb1f8..6c1f02d0da2d 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -5807,18 +5807,11 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * * @see #FOCUSABLES_ALL * @see #FOCUSABLES_TOUCH_MODE - * @see #FOCUSABLES_ACCESSIBILITY */ public void addFocusables(ArrayList<View> views, int direction, int focusableMode) { if (views == null) { return; } - if ((focusableMode & FOCUSABLE_IN_TOUCH_MODE) == FOCUSABLE_IN_TOUCH_MODE) { - if (isFocusable() && (!isInTouchMode() || isFocusableInTouchMode())) { - views.add(this); - return; - } - } if ((focusableMode & FOCUSABLES_ACCESSIBILITY) == FOCUSABLES_ACCESSIBILITY) { if (AccessibilityManager.getInstance(mContext).isEnabled() && includeForAccessibility()) { @@ -5826,14 +5819,14 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal return; } } - if ((focusableMode & FOCUSABLES_ALL) == FOCUSABLES_ALL) { - if (isFocusable()) { - views.add(this); - return; - } - } else { - throw new IllegalArgumentException("Unknow focusable mode: " + focusableMode); + if (!isFocusable()) { + return; + } + if ((focusableMode & FOCUSABLES_TOUCH_MODE) == FOCUSABLES_TOUCH_MODE + && isInTouchMode() && !isFocusableInTouchMode()) { + return; } + views.add(this); } /** |