summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Casey Burkhardt <caseyburkhardt@google.com> 2017-04-27 11:09:50 -0700
committer Casey Burkhardt <caseyburkhardt@google.com> 2017-04-27 15:19:52 -0700
commita338b51e0232daadbee7fe9dd861cd78e9e6d9a9 (patch)
treef7a9ae0ca7ed4edf8a889bda8a0cb6240b26fe73
parente6746726bc256601ade37fc4b3a48603e69110ad (diff)
@NonNull on AccessibilityButtonController methods
Make Handler parameter @NonNull and adjust implementation to always expect non-null Handlers. Bug: 37709203 Test: Manual Change-Id: I3937ae1c4e49bfc7652750cc64cac9e78f9d3ce2
-rw-r--r--core/java/android/accessibilityservice/AccessibilityButtonController.java26
1 files changed, 10 insertions, 16 deletions
diff --git a/core/java/android/accessibilityservice/AccessibilityButtonController.java b/core/java/android/accessibilityservice/AccessibilityButtonController.java
index c3a5daba4cfc..ee1976889299 100644
--- a/core/java/android/accessibilityservice/AccessibilityButtonController.java
+++ b/core/java/android/accessibilityservice/AccessibilityButtonController.java
@@ -23,6 +23,8 @@ import android.os.RemoteException;
import android.util.ArrayMap;
import android.util.Slog;
+import com.android.internal.util.Preconditions;
+
/**
* Controller for the accessibility button within the system's navigation area
* <p>
@@ -89,7 +91,7 @@ public final class AccessibilityButtonController {
* @param callback the callback to add, must be non-null
*/
public void registerAccessibilityButtonCallback(@NonNull AccessibilityButtonCallback callback) {
- registerAccessibilityButtonCallback(callback, null);
+ registerAccessibilityButtonCallback(callback, new Handler());
}
/**
@@ -99,11 +101,12 @@ public final class AccessibilityButtonController {
* {@code null}.
*
* @param callback the callback to add, must be non-null
- * @param handler the handler on which to callback should execute, or {@code null} to
- * execute on the service's main thread
+ * @param handler the handler on which the callback should execute, must be non-null
*/
public void registerAccessibilityButtonCallback(@NonNull AccessibilityButtonCallback callback,
- @Nullable Handler handler) {
+ @NonNull Handler handler) {
+ Preconditions.checkNotNull(callback);
+ Preconditions.checkNotNull(handler);
synchronized (mLock) {
if (mCallbacks == null) {
mCallbacks = new ArrayMap<>();
@@ -121,6 +124,7 @@ public final class AccessibilityButtonController {
*/
public void unregisterAccessibilityButtonCallback(
@NonNull AccessibilityButtonCallback callback) {
+ Preconditions.checkNotNull(callback);
synchronized (mLock) {
if (mCallbacks == null) {
return;
@@ -154,12 +158,7 @@ public final class AccessibilityButtonController {
for (int i = 0, count = entries.size(); i < count; i++) {
final AccessibilityButtonCallback callback = entries.keyAt(i);
final Handler handler = entries.valueAt(i);
- if (handler != null) {
- handler.post(() -> callback.onClicked(this));
- } else {
- // We're already on the main thread, just run the callback.
- callback.onClicked(this);
- }
+ handler.post(() -> callback.onClicked(this));
}
}
@@ -184,12 +183,7 @@ public final class AccessibilityButtonController {
for (int i = 0, count = entries.size(); i < count; i++) {
final AccessibilityButtonCallback callback = entries.keyAt(i);
final Handler handler = entries.valueAt(i);
- if (handler != null) {
- handler.post(() -> callback.onAvailabilityChanged(this, available));
- } else {
- // We're already on the main thread, just run the callback.
- callback.onAvailabilityChanged(this, available);
- }
+ handler.post(() -> callback.onAvailabilityChanged(this, available));
}
}