package androidx.core.accessibilityservice; import android.accessibilityservice.AccessibilityServiceInfo; import android.content.pm.PackageManager; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import c.d.b.a.a; public final class AccessibilityServiceInfoCompat { public static final int CAPABILITY_CAN_FILTER_KEY_EVENTS = 8; public static final int CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 4; public static final int CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION = 2; public static final int CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT = 1; public static final int FEEDBACK_ALL_MASK = -1; public static final int FEEDBACK_BRAILLE = 32; public static final int FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 2; public static final int FLAG_REPORT_VIEW_IDS = 16; public static final int FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY = 8; public static final int FLAG_REQUEST_FILTER_KEY_EVENTS = 32; public static final int FLAG_REQUEST_TOUCH_EXPLORATION_MODE = 4; private AccessibilityServiceInfoCompat() { } @NonNull public static String capabilityToString(int i) { return i != 1 ? i != 2 ? i != 4 ? i != 8 ? "UNKNOWN" : "CAPABILITY_CAN_FILTER_KEY_EVENTS" : "CAPABILITY_CAN_REQUEST_ENHANCED_WEB_ACCESSIBILITY" : "CAPABILITY_CAN_REQUEST_TOUCH_EXPLORATION" : "CAPABILITY_CAN_RETRIEVE_WINDOW_CONTENT"; } @NonNull public static String feedbackTypeToString(int i) { StringBuilder L = a.L("["); while (i > 0) { int numberOfTrailingZeros = 1 << Integer.numberOfTrailingZeros(i); i &= ~numberOfTrailingZeros; if (L.length() > 1) { L.append(", "); } if (numberOfTrailingZeros == 1) { L.append("FEEDBACK_SPOKEN"); } else if (numberOfTrailingZeros == 2) { L.append("FEEDBACK_HAPTIC"); } else if (numberOfTrailingZeros == 4) { L.append("FEEDBACK_AUDIBLE"); } else if (numberOfTrailingZeros == 8) { L.append("FEEDBACK_VISUAL"); } else if (numberOfTrailingZeros == 16) { L.append("FEEDBACK_GENERIC"); } } L.append("]"); return L.toString(); } @Nullable public static String flagToString(int i) { if (i == 1) { return "DEFAULT"; } if (i == 2) { return "FLAG_INCLUDE_NOT_IMPORTANT_VIEWS"; } if (i == 4) { return "FLAG_REQUEST_TOUCH_EXPLORATION_MODE"; } if (i == 8) { return "FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY"; } if (i == 16) { return "FLAG_REPORT_VIEW_IDS"; } if (i != 32) { return null; } return "FLAG_REQUEST_FILTER_KEY_EVENTS"; } public static int getCapabilities(@NonNull AccessibilityServiceInfo accessibilityServiceInfo) { return accessibilityServiceInfo.getCapabilities(); } @Nullable public static String loadDescription(@NonNull AccessibilityServiceInfo accessibilityServiceInfo, @NonNull PackageManager packageManager) { return accessibilityServiceInfo.loadDescription(packageManager); } }