当前位置: 首页>>代码示例>>Java>>正文


Java AccessibilityWindowInfo.TYPE_SYSTEM属性代码示例

本文整理汇总了Java中android.view.accessibility.AccessibilityWindowInfo.TYPE_SYSTEM属性的典型用法代码示例。如果您正苦于以下问题:Java AccessibilityWindowInfo.TYPE_SYSTEM属性的具体用法?Java AccessibilityWindowInfo.TYPE_SYSTEM怎么用?Java AccessibilityWindowInfo.TYPE_SYSTEM使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在android.view.accessibility.AccessibilityWindowInfo的用法示例。


在下文中一共展示了AccessibilityWindowInfo.TYPE_SYSTEM属性的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: isSystemWindow

private boolean isSystemWindow(int windowId) {
    if (mSystemWindowIdsSet.contains(windowId)) {
        return true;
    }

    if (!mIsSplitScreenModeAvailable) {
        return false;
    }

    for (AccessibilityWindowInfo window : mService.getWindows()) {
        if (window.getId() == windowId &&
                window.getType() == AccessibilityWindowInfo.TYPE_SYSTEM) {
            return true;
        }
    }

    return false;
}
 
开发者ID:google,项目名称:talkback,代码行数:18,代码来源:ProcessorScreen.java

示例2: isStatusBar

public boolean isStatusBar(int windowId) {
    if (mWindows == null || mWindows.size() == 0) {
        return false;
    }

    return mWindows.get(0).getId() == windowId &&
            mWindows.get(0).getType() == AccessibilityWindowInfo.TYPE_SYSTEM;
}
 
开发者ID:google,项目名称:talkback,代码行数:8,代码来源:WindowManager.java

示例3: isNavigationBar

public boolean isNavigationBar(int windowId) {
    if (mWindows == null || mWindows.size() < 2) {
        return false;
    }

    int lastIndex = mWindows.size() - 1;
    return mWindows.get(lastIndex).getId() == windowId &&
            mWindows.get(lastIndex).getType() == AccessibilityWindowInfo.TYPE_SYSTEM;
}
 
开发者ID:google,项目名称:talkback,代码行数:9,代码来源:WindowManager.java

示例4: removeSystemButtonsWindowFromWindowList

private void removeSystemButtonsWindowFromWindowList(List<SwitchAccessWindowInfo> windowList) {
    final WindowManager wm = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
    final Display display = wm.getDefaultDisplay();
    final Point screenSize = new Point();
    display.getSize(screenSize);

    final Iterator<SwitchAccessWindowInfo> windowIterator = windowList.iterator();
    while (windowIterator.hasNext()) {
        SwitchAccessWindowInfo window = windowIterator.next();
        /* Keep all non-system buttons */
        if (window.getType() != AccessibilityWindowInfo.TYPE_SYSTEM) {
            continue;
        }

        final Rect windowBounds = new Rect();
        window.getBoundsInScreen(windowBounds);

        /* Keep system dialogs (app has crashed), which don't border any edge */
        if ((windowBounds.top > 0) && (windowBounds.bottom < screenSize.y)
                && (windowBounds.left > 0) && (windowBounds.right < screenSize.x)) {
            continue;
        }

        /* Keep notifications, which start at the top and cover more than half the width */
        if ((windowBounds.top <= 0) && (windowBounds.width() > screenSize.x / 2)) {
            continue;
        }

        /* Keep large system overlays like the context menu */
        final int windowArea = windowBounds.width() * windowBounds.height();
        final int screenArea = screenSize.x * screenSize.y;
        if (windowArea > (screenArea / 2)) {
            continue;
        }

        windowIterator.remove();
    }
}
 
开发者ID:google,项目名称:talkback,代码行数:38,代码来源:MainTreeBuilder.java

示例5: matchWindowType

private boolean matchWindowType(AccessibilityWindowInfo window, int windowTypeFilter) {
    int windowType = window.getType();
    if ((windowTypeFilter & WINDOW_TYPE_SYSTEM) != 0 &&
            windowType == AccessibilityWindowInfo.TYPE_SYSTEM) {
        return true;
    } else if ((windowTypeFilter & WINDOW_TYPE_APPLICATION) != 0 &&
            windowType == AccessibilityWindowInfo.TYPE_APPLICATION) {
        return true;
    } else if ((windowTypeFilter & WINDOW_TYPE_SPLIT_SCREEN_DIVIDER) != 0 &&
            windowType == AccessibilityWindowInfo.TYPE_SPLIT_SCREEN_DIVIDER) {
        return true;
    } else {
        return false;
    }
}
 
开发者ID:google,项目名称:talkback,代码行数:15,代码来源:CursorControllerApp.java

示例6: onAccessibilityEvent

/**
 * Resets cached scrollable state when touch exploration after window state
 * changes.
 */
@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
    switch (event.getEventType()) {
        case AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED:
            // Reset cached scrollable state.
            mLastNodeWasScrollable = false;

            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                // Store window title in the map.
                List<CharSequence> titles = event.getText();
                if (titles.size() > 0) {
                    AccessibilityNodeInfo node = event.getSource();
                    if (node != null) {
                        int windowType = getWindowType(node);
                        if (windowType == AccessibilityWindowInfo.TYPE_APPLICATION ||
                                windowType == AccessibilityWindowInfo.TYPE_SYSTEM) {
                            mWindowTitlesMap.put(node.getWindowId(), titles.get(0));
                        }
                        node.recycle();
                    }
                }
            }
            break;
        case AccessibilityEvent.TYPE_WINDOWS_CHANGED:
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                // Copy key set not to modify original map.
                HashSet<Integer> windowIdsToBeRemoved = new HashSet<Integer>();
                windowIdsToBeRemoved.addAll(mWindowTitlesMap.keySet());

                // Enumerate window ids to be removed.
                List<AccessibilityWindowInfo> windows = mService.getWindows();
                for (AccessibilityWindowInfo window : windows) {
                    windowIdsToBeRemoved.remove(window.getId());
                }

                // Delete titles of non-existing window ids.
                for (Integer windowId : windowIdsToBeRemoved) {
                    mWindowTitlesMap.remove(windowId);
                }
            }
            break;
    }
}
 
开发者ID:google,项目名称:talkback,代码行数:47,代码来源:TouchExplorationFormatter.java


注:本文中的android.view.accessibility.AccessibilityWindowInfo.TYPE_SYSTEM属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。