1. Views are represented as AccessibilityNodeInfos to AccessibilityServices.
2. An accessibility service receives AccessibilityEvents and can ask
for its source and gets an AccessibilityNodeInfo which can be used
to get its parent and children infos and so on.
3. AccessibilityNodeInfo contains some attributes and actions that
can be performed on the source.
4. AccessibilityService can request the system to preform an action
on the source of an AccessibilityNodeInfo.
5. ViewAncestor provides an interaction connection to the
AccessibiltyManagerService and an accessibility service uses
its connection to the latter to interact with screen content.
6. AccessibilityService can interact ONLY with the focused window
and all calls are routed through the AccessibilityManagerService
which imposes security.
7. Hidden APIs on AccessibilityService can find AccessibilityNodeInfos
based on some criteria. These API go through the AccessibilityManagerServcie
for security check.
8. Some actions are hidden and are exposes only to eng builds for UI testing.
Change-Id: Ie34fa4219f350eb3f4f6f9f45b24f709bd98783c
. Fixed spelling.
. Added comments on internal methods.
. Adopted the suggested internal name changes to improve clarity.
. Added UNDEFINED constant to public API to avoid making reference to Integer.MAX_VALUE in docs.
. Added final everywhere, then removed it.
. Make the Interval class package private so that it can be put somewhere more general later.
. Tidy code, removing maximize flag throughout.
. Remove last of allocations taking place during layout.
. Implement measureChild() etc.
. Added LinearLayout alignment compatibility mode, and made it the default.
Change-Id: I6a4ffa022d97d68138d1903d3830a20278815435
https://android-git.corp.google.com/g/#change,109891
Menu selector wasn't showing up properly because selector state wasn't updated after touch mode. Added this to resurrectselection call.
http://b/issue?id=4372583
TESTED = runs on M4.
Change-Id: I349c3b86f4e8a1a02a20494b547859d0c12867ee
Text has been removed to leave space for 4 icons, that should fit
even in portrait mode.
Note: requires a definitive selectAll icon from designers.
Change-Id: I65547527e9ca872aa8888467f31fa7de9653fa77
Sync with UX on action bar tab layout behavior.
Make action bar tabs behave better with configuration changes.
LinearLayout now supports largest child measurement in unspecified
mode.
Change-Id: Id520641715a61c07e64124a0c5a70912996c98a0
This is the type returned by event.getX/Y methods. Conversion
to ints is only performed when needed. Low performance impact
since there is only a minimal amount of computations on these
values.
Change-Id: I53a56efe5e3a1a96911adc25fedaab7f40f1ba8e
* commit '7dfdb914206eafbf2aa4533e9b6a50428a5d0d3d':
Change measurement of effective screen height for PopupWindow now that DisplayMetrics reports it without system decorations.
This is needed for specific TextEdit (such as AutoCompleteTextField)
which do not want to display the "No suggestions available" message.
Bug 4443830
Change-Id: Ic228b56bacfdf2765e70eb24952ab087556c1f93