# Print output for @column tags ?> AccessibilityWindowInfo - Android SDK | Android Developers

Most visited

Recently visited

AccessibilityWindowInfo

public final class AccessibilityWindowInfo
extends Object implements Parcelable

java.lang.Object
   ↳ 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

int TYPE_ACCESSIBILITY_OVERLAY

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

int TYPE_APPLICATION

Window type: This is an application window.

int TYPE_INPUT_METHOD

Window type: This is an input method window.

int TYPE_SPLIT_SCREEN_DIVIDER

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

int TYPE_SYSTEM

Window type: This is an system window.

Inherited constants

Fields

public static final Creator<AccessibilityWindowInfo> CREATOR

Public constructors

AccessibilityWindowInfo()

Creates a new AccessibilityWindowInfo.

AccessibilityWindowInfo(AccessibilityWindowInfo info)

Copy constructor.

Public methods

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

boolean equals(Object obj)

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

AccessibilityNodeInfo getAnchor()

Gets the node that anchors this window to another.

void getBoundsInScreen(Rect outBounds)

Gets the bounds of this window in the screen.

AccessibilityWindowInfo getChild(int index)

Gets the child window at a given index.

int getChildCount()

Gets the number of child windows.

int getDisplayId()

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

int getId()

Gets the unique window id.

int getLayer()

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

AccessibilityWindowInfo getParent()

Gets the parent window.

void getRegionInScreen(Region outRegion)

Gets the touchable region of this window in the screen.

AccessibilityNodeInfo getRoot()

Gets the root node in the window's hierarchy.

CharSequence getTitle()

Gets the title of the window.

int getType()

Gets the type of the window.

int hashCode()

Returns a hash code value for the object.

boolean isAccessibilityFocused()

Gets if this window has accessibility focus.

boolean isActive()

Gets if this window is active.

boolean isFocused()

Gets if this window has input focus.

boolean isInPictureInPictureMode()

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

static AccessibilityWindowInfo obtain()

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

static AccessibilityWindowInfo obtain(AccessibilityWindowInfo info)

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

void recycle()

Return an instance back to be reused.

String toString()

Returns a string representation of the object.

void writeToParcel(Parcel parcel, int flags)

Flatten this object in to a Parcel.

Inherited methods

Constants

TYPE_ACCESSIBILITY_OVERLAY

public static final int TYPE_ACCESSIBILITY_OVERLAY

Window type: Windows that are overlaid only by an AccessibilityService 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.

Constant Value: 4 (0x00000004)

TYPE_APPLICATION

public static final int TYPE_APPLICATION

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

Constant Value: 1 (0x00000001)

TYPE_INPUT_METHOD

public static final int TYPE_INPUT_METHOD

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

Constant Value: 2 (0x00000002)

TYPE_SPLIT_SCREEN_DIVIDER

public static final int TYPE_SPLIT_SCREEN_DIVIDER

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.

Constant Value: 5 (0x00000005)

TYPE_SYSTEM

public static final int TYPE_SYSTEM

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

Constant Value: 3 (0x00000003)

Fields

CREATOR

public static final Creator<AccessibilityWindowInfo> CREATOR

Public constructors

AccessibilityWindowInfo

public AccessibilityWindowInfo ()

Creates a new AccessibilityWindowInfo.

AccessibilityWindowInfo

public AccessibilityWindowInfo (AccessibilityWindowInfo info)

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

public int describeContents ()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(android.os.Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or CONTENTS_FILE_DESCRIPTOR

equals

public boolean equals (Object obj)

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.

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).

Note that it is generally necessary to override the hashCode method whenever this method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.

Parameters
obj Object: the reference object with which to compare.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

getAnchor

public AccessibilityNodeInfo getAnchor ()

Gets the node that anchors this window to another.

Returns
AccessibilityNodeInfo The anchor node, or null if none exists.

getBoundsInScreen

public void getBoundsInScreen (Rect outBounds)

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

public AccessibilityWindowInfo getChild (int index)

Gets the child window at a given index.

Parameters
index int: The index.

Returns
AccessibilityWindowInfo The child.

getChildCount

public int getChildCount ()

Gets the number of child windows.

Returns
int The child count.

getDisplayId

public int getDisplayId ()

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

Returns
int The logical display id.

getId

public int getId ()

Gets the unique window id.

Returns
int windowId The window id.

getLayer

public int getLayer ()

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

Returns
int The window layer.

getParent

public AccessibilityWindowInfo getParent ()

Gets the parent window.

Returns
AccessibilityWindowInfo The parent window, or null if none exists.

getRegionInScreen

public void getRegionInScreen (Region outRegion)

Gets the touchable region of this window in the screen.

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

getRoot

public AccessibilityNodeInfo getRoot ()

Gets the root node in the window's hierarchy.

Returns
AccessibilityNodeInfo The root node.

getTitle

public CharSequence getTitle ()

Gets the title of the window.

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

getType

public int getType ()

Gets the type of the window.

Returns
int The type.

See also:

hashCode

public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the Java™ programming language.)

Returns
int a hash code value for this object.

isAccessibilityFocused

public boolean isAccessibilityFocused ()

Gets if this window has accessibility focus.

Returns
boolean Whether has accessibility focus.

isActive

public boolean isActive ()

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.

Returns
boolean Whether this is the active window.

isFocused

public boolean isFocused ()

Gets if this window has input focus.

Returns
boolean Whether has input focus.

isInPictureInPictureMode

public boolean isInPictureInPictureMode ()

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

Returns
boolean true if the window is in picture-in-picture mode, false otherwise.

obtain

public static AccessibilityWindowInfo obtain ()

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.

Returns
AccessibilityWindowInfo An instance.

obtain

public static AccessibilityWindowInfo obtain (AccessibilityWindowInfo info)

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.

Returns
AccessibilityWindowInfo An instance.

recycle

public void recycle ()

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.

Throws
IllegalStateException If the info is already recycled.

toString

public String toString ()

Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

writeToParcel

public void writeToParcel (Parcel parcel, 
                int flags)

Flatten this object in to a Parcel.

Parameters
parcel Parcel: The Parcel in which the object should be written.

flags int: Additional flags about how the object should be written. May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES