Added in API level 21

AccessibilityWindowInfo


class AccessibilityWindowInfo : Parcelable
kotlin.Any
   ↳ android.view.accessibility.AccessibilityWindowInfo

This class represents a state snapshot of a window for accessibility purposes. The screen content contains one or more windows where some windows can be descendants of other windows, which is the windows are hierarchically ordered. Note that there is no root window. Hence, the screen content can be seen as a collection of window trees.

Summary

Constants
static Int

Window type: Windows that are overlaid only by an for interception of user interactions without changing the windows an accessibility service can introspect.

static Int

Window type: This is an application window.

static Int

Window type: This is an input method window.

static Int

Window type: A system window used to show the UI for the interaction with window-based magnification, which includes the magnified content and the option menu.

static Int

Window type: A system window used to divide the screen in split-screen mode.

static Int

Window type: This is a system window.

Inherited constants
Public constructors

Creates a new AccessibilityWindowInfo.

Copy constructor.

Public methods
Int

Boolean
equals(other: Any?)

Indicates whether some other object is "equal to" this one.

AccessibilityNodeInfo!

Gets the node that anchors this window to another.

Unit
getBoundsInScreen(outBounds: Rect!)

Gets the bounds of this window in the screen.

AccessibilityWindowInfo!
getChild(index: Int)

Gets the child window at a given index.

Int

Gets the number of child windows.

Int

Returns the ID of the display this window is on, for use with android.hardware.display.DisplayManager#getDisplay(int).

Int

Gets the unique window id.

Int

Gets the layer which determines the Z-order of the window.

LocaleList

Return the android.os.LocaleList of the window.

AccessibilityWindowInfo!

Gets the parent window.

Unit

Gets the touchable region of this window in the screen.

AccessibilityNodeInfo!

Gets the root node in the window's hierarchy.

AccessibilityNodeInfo?
getRoot(prefetchingStrategy: Int)

Gets the root node in the window's hierarchy.

CharSequence?

Gets the title of the window.

Long

Return the SystemClock#uptimeMillis() at which the last transition happens.

Int

Gets the type of the window.

Int

Boolean

Gets if this window has accessibility focus.

Boolean

Gets if this window is active.

Boolean

Gets if this window has input focus.

Boolean

Check if the window is in picture-in-picture mode.

static AccessibilityWindowInfo!

Returns a cached instance if such is available or a new one is created.

static AccessibilityWindowInfo!

Returns a cached instance if such is available or a new one is created.

Unit

Return an instance back to be reused.

String

Unit
writeToParcel(parcel: Parcel, flags: Int)

Properties
static Parcelable.Creator<AccessibilityWindowInfo!>

Constants

TYPE_ACCESSIBILITY_OVERLAY

Added in API level 22
static val TYPE_ACCESSIBILITY_OVERLAY: Int

Window type: Windows that are overlaid only by an for interception of user interactions without changing the windows an accessibility service can introspect. In particular, an accessibility service can introspect only windows that a sighted user can interact with which they can touch these windows or can type into these windows. For example, if there is a full screen accessibility overlay that is touchable, the windows below it will be introspectable by an accessibility service regardless they are covered by a touchable window.

Value: 4

TYPE_APPLICATION

Added in API level 21
static val TYPE_APPLICATION: Int

Window type: This is an application window. Such a window shows UI for interacting with an application.

Value: 1

TYPE_INPUT_METHOD

Added in API level 21
static val TYPE_INPUT_METHOD: Int

Window type: This is an input method window. Such a window shows UI for inputting text such as keyboard, suggestions, etc.

Value: 2

TYPE_MAGNIFICATION_OVERLAY

Added in API level 33
static val TYPE_MAGNIFICATION_OVERLAY: Int

Window type: A system window used to show the UI for the interaction with window-based magnification, which includes the magnified content and the option menu.

Value: 6

TYPE_SPLIT_SCREEN_DIVIDER

Added in API level 24
static val TYPE_SPLIT_SCREEN_DIVIDER: Int

Window type: A system window used to divide the screen in split-screen mode. This type of window is present only in split-screen mode.

Value: 5

TYPE_SYSTEM

Added in API level 21
static val TYPE_SYSTEM: Int

Window type: This is a system window. Such a window shows UI for interacting with the system.

Value: 3

Public constructors

AccessibilityWindowInfo

Added in API level 30
AccessibilityWindowInfo()

Creates a new AccessibilityWindowInfo.

AccessibilityWindowInfo

Added in API level 30
AccessibilityWindowInfo(info: AccessibilityWindowInfo)

Copy constructor. Creates a new AccessibilityWindowInfo, and this new instance is initialized from given info.

Parameters
info AccessibilityWindowInfo: The other info. This value cannot be null.

Public methods

describeContents

Added in API level 21
fun describeContents(): Int
Return
Int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR

equals

Added in API level 21
fun equals(other: Any?): Boolean

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
obj This value may be null.
Return
Boolean true if this object is the same as the obj argument; false otherwise.

getAnchor

Added in API level 24
fun getAnchor(): AccessibilityNodeInfo!

Gets the node that anchors this window to another.

Return
AccessibilityNodeInfo! The anchor node, or null if none exists.

getBoundsInScreen

Added in API level 21
fun getBoundsInScreen(outBounds: Rect!): Unit

Gets the bounds of this window in the screen. This is equivalent to get the bounds of the Region from getRegionInScreen(android.graphics.Region).

Parameters
outBounds Rect!: The out window bounds.

getChild

Added in API level 21
fun getChild(index: Int): AccessibilityWindowInfo!

Gets the child window at a given index.

Parameters
index Int: The index.
Return
AccessibilityWindowInfo! The child.

getChildCount

Added in API level 21
fun getChildCount(): Int

Gets the number of child windows.

Return
Int The child count.

getDisplayId

Added in API level 30
fun getDisplayId(): Int

Returns the ID of the display this window is on, for use with android.hardware.display.DisplayManager#getDisplay(int).

Return
Int The logical display id.

getId

Added in API level 21
fun getId(): Int

Gets the unique window id.

Return
Int windowId The window id.

getLayer

Added in API level 21
fun getLayer(): Int

Gets the layer which determines the Z-order of the window. Windows with greater layer appear on top of windows with lesser layer.

Return
Int The window layer.

getLocales

Added in API level 34
fun getLocales(): LocaleList

Return the android.os.LocaleList of the window.

Return
LocaleList the locales of the window. This value cannot be null.

getParent

Added in API level 21
fun getParent(): AccessibilityWindowInfo!

Gets the parent window.

Return
AccessibilityWindowInfo! The parent window, or null if none exists.

getRegionInScreen

Added in API level 30
fun getRegionInScreen(outRegion: Region): Unit

Gets the touchable region of this window in the screen.

Parameters
outRegion Region: The out window region. This value cannot be null.

getRoot

Added in API level 21
fun getRoot(): AccessibilityNodeInfo!

Gets the root node in the window's hierarchy.

Return
AccessibilityNodeInfo! The root node.

getTitle

Added in API level 24
fun getTitle(): CharSequence?

Gets the title of the window.

Return
CharSequence? The title of the window, or null if none is available.

getTransitionTimeMillis

Added in API level 34
fun getTransitionTimeMillis(): Long

Return the SystemClock#uptimeMillis() at which the last transition happens. A transition happens when getBoundsInScreen(android.graphics.Rect) is changed.
Value is a non-negative timestamp in the android.os.SystemClock#uptimeMillis() time base.

Return
Long The transition timestamp. Value is a non-negative timestamp in the android.os.SystemClock#uptimeMillis() time base.

getType

Added in API level 21
fun getType(): Int

Gets the type of the window.

Return
Int The type.

hashCode

Added in API level 21
fun hashCode(): Int
Return
Int a hash code value for this object.

isAccessibilityFocused

Added in API level 21
fun isAccessibilityFocused(): Boolean

Gets if this window has accessibility focus.

Return
Boolean Whether has accessibility focus.

isActive

Added in API level 21
fun isActive(): Boolean

Gets if this window is active. An active window is the one the user is currently touching or the window has input focus and the user is not touching any window.

This is defined as the window that most recently fired one of the following events: AccessibilityEvent#TYPE_WINDOW_STATE_CHANGED, AccessibilityEvent#TYPE_VIEW_HOVER_ENTER, AccessibilityEvent#TYPE_VIEW_HOVER_EXIT. In other words, the last window shown that also has input focus.

Return
Boolean Whether this is the active window.

isFocused

Added in API level 21
fun isFocused(): Boolean

Gets if this window has input focus.

Return
Boolean Whether has input focus.

isInPictureInPictureMode

Added in API level 26
fun isInPictureInPictureMode(): Boolean

Check if the window is in picture-in-picture mode.

Return
Boolean true if the window is in picture-in-picture mode, false otherwise.

obtain

Added in API level 21
static fun obtain(): AccessibilityWindowInfo!

Returns a cached instance if such is available or a new one is created.

In most situations object pooling is not beneficial. Create a new instance using the constructor AccessibilityWindowInfo() instead.

Return
AccessibilityWindowInfo! An instance.

obtain

Added in API level 21
static fun obtain(info: AccessibilityWindowInfo!): AccessibilityWindowInfo!

Returns a cached instance if such is available or a new one is created. The returned instance is initialized from the given info.

In most situations object pooling is not beneficial. Create a new instance using the constructor AccessibilityWindowInfo(android.view.accessibility.AccessibilityWindowInfo) instead.

Parameters
info AccessibilityWindowInfo!: The other info.
Return
AccessibilityWindowInfo! An instance.

recycle

Added in API level 21
fun recycle(): Unit

Return an instance back to be reused.

Note: You must not touch the object after calling this function.

In most situations object pooling is not beneficial, and recycling is not necessary.

Exceptions
java.lang.IllegalStateException If the info is already recycled.

toString

Added in API level 21
fun toString(): String
Return
String a string representation of the object.

writeToParcel

Added in API level 21
fun writeToParcel(
    parcel: Parcel,
    flags: Int
): Unit
Parameters
dest The Parcel in which the object should be written. This value cannot be null.
flags Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES

Properties

CREATOR

Added in API level 21
static val CREATOR: Parcelable.Creator<AccessibilityWindowInfo!>