List of usage examples for android.view View getImportantForAccessibility
@ViewDebug.ExportedProperty(category = "accessibility", mapping = { @ViewDebug.IntToString(from = IMPORTANT_FOR_ACCESSIBILITY_AUTO, to = "auto"), @ViewDebug.IntToString(from = IMPORTANT_FOR_ACCESSIBILITY_YES, to = "yes"), @ViewDebug.IntToString(from = IMPORTANT_FOR_ACCESSIBILITY_NO, to = "no"), @ViewDebug.IntToString(from = IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, to = "noHideDescendants") }) public int getImportantForAccessibility()
From source file:com.google.android.apps.common.testing.accessibility.framework.ViewAccessibilityUtils.java
/** * @see View#isImportantForAccessibility() *//*from w ww . jav a 2s.c o m*/ public static boolean isImportantForAccessibility(View view) { if (view == null) { return false; } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { return view.isImportantForAccessibility(); } else { // On earlier APIs, we must piece together accessibility importance from the available // properties. We return false incorrectly for some cases where unretrievable listeners // prevent us from determining importance. // If the developer marked the view as explicitly not important, it isn't. int mode = view.getImportantForAccessibility(); if ((mode == View.IMPORTANT_FOR_ACCESSIBILITY_NO) || (mode == View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS)) { return false; } // No parent view can be hiding us. (APIs 19 to 21) ViewParent parent = view.getParent(); while (parent instanceof View) { if (((View) parent) .getImportantForAccessibility() == View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS) { return false; } parent = parent.getParent(); } // Interrogate the view's other properties to determine importance. return (mode == View.IMPORTANT_FOR_ACCESSIBILITY_YES) || isActionableForAccessibility(view) || hasListenersForAccessibility(view) || (view.getAccessibilityNodeProvider() != null) || (ViewCompat.getAccessibilityLiveRegion(view) != ViewCompat.ACCESSIBILITY_LIVE_REGION_NONE); } }
From source file:org.chromium.chrome.browser.tab.Tab.java
/** * Update whether or not the current native tab and/or web contents are * currently visible (from an accessibility perspective), or whether * they're obscured by another view./*from w w w.j av a 2 s .co m*/ */ public void updateAccessibilityVisibility() { View view = getView(); if (view != null) { int importantForAccessibility = isObscuredByAnotherViewForAccessibility() ? View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS : View.IMPORTANT_FOR_ACCESSIBILITY_YES; if (view.getImportantForAccessibility() != importantForAccessibility) { view.setImportantForAccessibility(importantForAccessibility); view.sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED); } } ContentViewCore cvc = getContentViewCore(); if (cvc != null) { boolean isWebContentObscured = isObscuredByAnotherViewForAccessibility() || isShowingSadTab(); cvc.setObscuredByAnotherView(isWebContentObscured); } }