Merge "Suppress exceptions for corner-case a11y events." into nyc-mr1-dev

This commit is contained in:
Phil Weaver
2016-07-20 16:46:41 +00:00
committed by Android (Google) Code Review

View File

@@ -305,7 +305,18 @@ public final class AccessibilityManager {
return;
}
if (!mIsEnabled) {
throw new IllegalStateException("Accessibility off. Did you forget to check that?");
Looper myLooper = Looper.myLooper();
if (myLooper == Looper.getMainLooper()) {
throw new IllegalStateException(
"Accessibility off. Did you forget to check that?");
} else {
// If we're not running on the thread with the main looper, it's possible for
// the state of accessibility to change between checking isEnabled and
// calling this method. So just log the error rather than throwing the
// exception.
Log.e(LOG_TAG, "AccessibilityEvent sent with accessibility disabled");
return;
}
}
userId = mUserId;
}