List of usage examples for android.support.v4.view.accessibility AccessibilityWindowInfoCompat getType
public int getType()
From source file:com.android.talkback.formatter.TouchExplorationFormatter.java
private static int getWindowType(AccessibilityNodeInfoCompat nodeCompat) { if (nodeCompat == null) { return -1; }//from ww w .java 2s.c o m AccessibilityWindowInfoCompat windowInfoCompat = nodeCompat.getWindow(); if (windowInfoCompat == null) { return -1; } int windowType = windowInfoCompat.getType(); windowInfoCompat.recycle(); return windowType; }
From source file:com.android.talkback.eventprocessor.ProcessorScreen.java
/** * Uses a heuristic to guess whether an event should be announced. * Any event that comes from an IME, or an invisible window is considered * an announcement./* w w w .j a v a2s . co m*/ */ private boolean shouldAnnounceEvent(AccessibilityEvent event, int windowId) { // Assume window ID of 0 is the keyboard. if (windowId == WINDOW_ID_NONE) { return true; } // If there's an actual window ID, we need to check the window type (if window available). boolean shouldAnnounceWindow = false; AccessibilityRecordCompat record = AccessibilityEventCompat.asRecord(event); AccessibilityNodeInfoCompat source = record.getSource(); if (source != null) { AccessibilityWindowInfoCompat window = source.getWindow(); if (window != null) { shouldAnnounceWindow = window.getType() == AccessibilityWindowInfoCompat.TYPE_INPUT_METHOD; window.recycle(); } else { // If window is not visible, we cannot know whether the window type is input method // or not. Let's announce it for the case. If window is visible but window info is // not available, it can be non-focusable visible window. Don't announce it for the // case. It can be a toast. shouldAnnounceWindow = !source.isVisibleToUser(); } source.recycle(); } return shouldAnnounceWindow; }
From source file:com.android.talkback.eventprocessor.ProcessorScreen.java
private int getWindowType(AccessibilityEvent event) { if (event == null) { return WINDOW_TYPE_NONE; }//from w w w . ja v a2 s . co m AccessibilityNodeInfo nodeInfo = event.getSource(); if (nodeInfo == null) { return WINDOW_TYPE_NONE; } AccessibilityNodeInfoCompat nodeInfoCompat = new AccessibilityNodeInfoCompat(nodeInfo); AccessibilityWindowInfoCompat windowInfoCompat = nodeInfoCompat.getWindow(); if (windowInfoCompat == null) { nodeInfoCompat.recycle(); return WINDOW_TYPE_NONE; } int windowType = windowInfoCompat.getType(); windowInfoCompat.recycle(); nodeInfoCompat.recycle(); return windowType; }