Fixing broken add focusables behavior I have introduced.
bug:6344608 Change-Id: I1d241c02bc22c5ef3f4b4b69a756772e8b2ef902
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user