8fd2e29c4121366f6fd712d4fb483776de8972e7 |
|
15-Aug-2017 |
Phil Weaver <pweaver@google.com> |
Better guarantee a11y service initial state I've see flakiness in the gesture dispatch test with magnification enabled. It turned out that the state of the input filter was in flux when onServiceConnected was called back. Now delaying that call until the input filter's state is stable. Also fixing the return value of getCenterX and Y when a service isn't actively controlling magnification. Bug: 65012944 Test: A11y CTS and unit tests. Change-Id: I64260ebb72ee95307d777a9e4b70876c14f99e9c (cherry picked from commit 53b690b5bc72ac5cd34300c9965707edd0b217cd)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5dc3ebcec692174e2f0593c934b7b56eeae5e249 |
|
16-Aug-2017 |
Phil Weaver <pweaver@google.com> |
Place focus on window when a11y performs an action Bug: 62344706 Test: Now able to bring up keyboard in split-screen mode. Also a11y CTS and unit tests pass. Change-Id: Ic4340425680c89e8fc5e586aa1d363b01fd69763
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
77287ab7d1e45853c2cf058fa9cf0332bf93153b |
|
23-Jun-2017 |
Phil Weaver <pweaver@google.com> |
Block a11y-changing key events from a11y services If the volume keys are being pressed to enable or disable an accessibility service, the key events should not be dispatched to accessibility services. Bug: 62653966 Test: A11y CTS and unit tests. Adding a set of unit tests for the expanded KeyboardInterceptor. Also verified that the accessibility shortcut now works as designed with TalkBack. Change-Id: Iaea58a5bfe6748d4b9a033f5b957e78298881c40
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8cc3fee95ca6847a67df0c641624d39d0fc770df |
|
17-Jun-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Merge "Resolve 3 inconsistencies in accessibility button API - Unify logic for detecting availability of the accessibility button - Ensure the initial visibility state is propagated to A11yMS - Ensure services only receive availability callbacks for changes" into oc-dev am: 4ab690a50d am: 8097485c28 Change-Id: I0c21a256e612fd2ecfb2dce6c4d28e3c33e075e2
|
469a2087d58325be9077dc06aed07563f9025179 |
|
14-Jun-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Resolve 3 inconsistencies in accessibility button API - Unify logic for detecting availability of the accessibility button - Ensure the initial visibility state is propagated to A11yMS - Ensure services only receive availability callbacks for changes Test: Manual, created test accessibility services targeting specific breakages Bug: 38345417 Change-Id: I2250b32830cdfc2ecdc1dff7b7130dced2c1db29
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
651fe9fc2e0a51d6a2123d6d44a6a8b8ed864742 |
|
25-May-2017 |
Phil Weaver <pweaver@google.com> |
Stop populating accessibility nodes with events This mostly rolls back ag/710190, which caused AccessibilityEvents to contain their source nodes. These nodes were not completely accurate, and populating them increases the overhead of AccessibilityEvents, particularly when large numbers of content changes happen. Having the service reload the node if it needs the update content should be sufficient. I have fixed several bugs since this change went in to address issues with the accessibility cache containing stale data. I think ensuring that the newly loaded data is up-to-date will fix whatever issues carrying the node along was intended to fix. Bug: 33961523 Test: A11y CTS still passes. I also tried TalkBack on a couple of switch controls, which is where I have previously seen the most issues with up-to-date announcements. Change-Id: Ie5a70bb0e89d49255c6a4c1c83d32b755c06902f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
be2922ff34424cfb996d895cde0cb31c724d09dc |
|
28-Apr-2017 |
Phil Weaver <pweaver@google.com> |
A11y changes for API council Bug: 37749679 Bug: 37747749 Bug: 37737948 Bug: 37718183 Bug: 37720667 Bug: 37724600 Bug: 37708057 Test: Updating unit and cts tests, which still pass. Change-Id: If28bdf985c4314e8e84dcd6510f406dd4e80dd38
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
09d4ff8960cd3d45988b0c3ff0835d281f0e16b5 |
|
31-Mar-2017 |
Phil Weaver <pweaver@google.com> |
Remove a11y web flags and associated settings Bug: 35707622 Bug: 28322375 Test: Ran a11y cts. Updated those tests in linked CL to ignore this feature. Change-Id: I1dccb3ae4e1f4d6bb832ae1b0edd4dad4a54289e
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c240c9b134fe4d1843433e76c0f6721bd712918c |
|
13-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "clear calling identity before calling settings provider" into oc-dev
|
35ba7ec539a91013aed6c78e48011903255ae4cb |
|
12-Apr-2017 |
Tony Mak <tonymak@google.com> |
clear calling identity before calling settings provider Test: Run a instrumentation test cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.ManagedProfileTest#testPhoneAccountVisibility Change-Id: I29b1dc307e9e127b919aebe4d83ab6311ce36f2d Fix: 34320197
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5d6144056493b0d657e74d13de8e751c06510357 |
|
06-Apr-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Improved multiuser support for A11y button/Magnification - Ensures NavigationBarFragment updates Accessibility button state based on the settings of the current user. - Launches AccessibilityButtonChooserActivity as the current user Bug: 36652061 Bug: 36699310 Bug: 37103953 Test: Manual Change-Id: Ieded484d548fb4631ceb8a873d667dd53fd2fd79
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ecb5b5ccc3c88f6430cf5584357c214797f5fd60 |
|
07-Apr-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Merge "Revise Accessibility button chooser intent/permissions" into oc-dev
|
afe3ef1b36d040f3095db7ec1df644a074df8906 |
|
06-Apr-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Revise Accessibility button chooser intent/permissions 1) Switch AccessibilityButtonChooserActivity to non-exported 2) Update AccessibilityButtonChooserActivity's intent action to be CTS-compliant 3) Switches to correct permission to validate a click of the accessibility button originated from the status bar service Bug: 36866328 Bug: 36976440 Test: Manual / Created app to validate launch protection Change-Id: Ifcd5e8dbbe683dc99bb900a5870a9ba374fbd5d4
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5b43fca04d6a29fd8d6720e90a9e8f222710f776 |
|
05-Apr-2017 |
Phil Weaver <pweaver@google.com> |
Fix crash when using list of enabled a11y services AccessibilityManagerService#getEnabledAccessibilityServiceList had an optimization to always return the same, statically allocated object. This is almost safe if it's being called from another process, as Binder will copy it. When called from the same process, however, it's a lot less safe and seems to have caused a crash. I think the optimization was already problematic in Binder calls as well, though. The method grabs a lock, but I think it's still possible for another thread to call the method while Binder is making the copy. I'm removing the optimization and just allocating a new List to prevent such crashes. Bug: 36364829 Test: No repro case, so I just ran a11y CTS and unit tests. Change-Id: Ib64703a7bbed82c6ca000d8703d23819188b4b9b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
3bf7c7634ac5e2aa47eae46a549fd467a8ead370 |
|
04-Apr-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Merge "Fix AccessibilityManager returning duplicate services" into oc-dev
|
fe9a53bc45fd0124a876dc0a49680aaf86641d3e |
|
31-Mar-2017 |
Jeff Sharkey <jsharkey@android.com> |
Consistent dump() permission checking. This change introduces new methods on DumpUtils that can check if the caller has DUMP and/or PACKAGE_USAGE_STATS access. It then moves all existing dump() methods to use these checks so that we emit consistent error messages. Test: cts-tradefed run commandAndExit cts-dev -m CtsSecurityTestCases -t android.security.cts.ServicePermissionsTest Bug: 32806790 Change-Id: Iaff6b9506818ee082b1e169c89ebe1001b3bfeca
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
0dd5b944efd13668b92ea058afc7604d4802fe6c |
|
29-Mar-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Fix AccessibilityManager returning duplicate services Prevents AccessibilityManagerService from providing duplicate accessibility service records to clients calling getEnabledAccessibilityServiceList if a service contains more than one feedback flag. Bug: 36493113 Test: Behavioral CTS test Change-Id: I2f836e15fdd70543bc8aa9a5602330b0b6846fec
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f1a9aff96261a40d16c36dd3d47a8190c308d744 |
|
24-Mar-2017 |
Phil Weaver <pweaver@google.com> |
Fix permission checking for a11y volume. Adding new permission for changing accessibility volume to allow system UI to change it. Also providing audio manager with a whitelist of bound accessibility service uids so it can allow servics to change the volume. Bug: 36569297 Test: Adding CTS test in linked CL. Change-Id: I4f327e3a251fc3780c5957f41217c2ef5bb8b16e
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5e8b980c5d6bc282b51b3ddfc8722ff973c7e885 |
|
24-Mar-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Target selection for Accessibility button Allows for selecting a single accessibility service or feature to be triggered by the accessibility button in the navigation bar Bug: 34720082 Test: Manual Change-Id: I320febede0398b1eff38a87d4db31fd7dfc53062
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ce687c5e4a0ce27e9190fb5c823ec4649fbc3712 |
|
15-Mar-2017 |
Phil Weaver <pweaver@google.com> |
Restructure a11y shortcut settings Separating the shortcut on/off from the shortcut service. Enabling the shortcut to work from the lock screen if the user wants it to. Bug: 35872328 Bug: 35219988 Bug: 35443593 Test: Adjusted tests for shortcut controller, manually activated shortcut in a variety of conditions. Change-Id: Id39d33ec62eb5f11b76b2972089167dc7d4c625b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
74922c63e1dfba074aa9219034e48a161bdfba5b |
|
13-Feb-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Display magnification via the nav bar Accessibility Button Adds support for invoking display magnification by first selecting the Accessibility Button, then touching an area of the screen to magnify. Bug: 30960346 Test: Manual Change-Id: Ifd8a355562f204182e34bd37f71a3637d85cf0e1
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
00de0e644dad9c70f0ed87e9028a14328b08b949 |
|
14-Mar-2017 |
Svetoslav Ganov <svetoslavganov@google.com> |
Merge "fix IndexOutOfBoundsException in AccessibilityManagerService..manageServicesLocked" am: 14c7e67da8 am: 6006d681ab am: 5cd3bb93ce Change-Id: Iee29739716cd7a264196d0999ada7d4399b30a3e
|
6006d681ab8eb6977edb308c7a4a287b65d055a2 |
|
14-Mar-2017 |
Svetoslav Ganov <svetoslavganov@google.com> |
Merge "fix IndexOutOfBoundsException in AccessibilityManagerService..manageServicesLocked" am: 14c7e67da8 Change-Id: Icfa9fc501806820545dd9df9d671fcdfe645b73f
|
ef4351cc72abeeba0f659950c199a4f9b7cd1842 |
|
18-Jan-2017 |
Eugene Susla <eugenesusla@google.com> |
Dont dispatch a11y events that have no subscribers This allows to avoid A11yManager -> A11yManagerService IPC, when there's no subscribers to a given event Test: steps: - Enable A11yManager.DEBUG - Navigate through a few random activities - In logcat, ensure log messages are present, notifying that certain events won't be dispatched Change-Id: Ia019fb66053f10095b3651407d09de8e89cdd227
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f00cd14f17c0acd6bffe78947d32ea0a2900d139 |
|
03-Mar-2017 |
Phil Weaver <pweaver@google.com> |
Basic accessibility support for picture-in-picture Exposing actions from the PIP InputConsumer to accessibility, stripping all actions from a covered PIP app, and adding the InputConsumer's actions on the PIP app's root view. We were also using an "undefined" accessibility ID to mean three different things: a root view, a host view of a virtual view hierarchy, and a truly undefined view. I've introduced new values for cases where the id could be defined. Also gathering all window IDs into one place to reduce the chance of collisions. Bug: 34773134 Test: In progress. Current cts passes. Change-Id: I97269741a292cf406272bf02359c76c396f84640
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e3bf23bed9ac24719d88f7e3bdb81db0ceda70fb |
|
19-Feb-2017 |
Phil Weaver <pweaver@google.com> |
Merge "Verify fingerprint exists before using it"
|
0adfbd33c884ce80ebe161428d7a8ae9e6aced03 |
|
17-Feb-2017 |
Phil Weaver <pweaver@google.com> |
Use accessibility action for touch exploration Explore-By-Touch has been dispatching touch events to the screen rather than using the accessibility API. This was intended as a workaround for apps that did not properly handle accessibility, but the workaround itself has been causing bugs in corner cases where properly accessible Views are partially covered by windows. This CL first tries to dispatch a click action, and falls back on the touch dispatch only if the click action fails. Bug: 35200501 Bug: 26216304 Bug: 20665958 Bug: 34949365 Bug: 34844480 Bug: 29535082 Test: Poking around with first party apps and TalkBack works fine. This behavior isn't covered by automated testing. Change-Id: I9cc18399d8f40f7381dfcbef91b5991b711bb7f1
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
7917a2f020b95a6372dd3c506183ea345ab5ae24 |
|
17-Feb-2017 |
Phil Weaver <pweaver@google.com> |
Verify fingerprint exists before using it The process will crash if we try to obtain a FingerprintManager on a device that doesn't implement one. Verify that the feature exists before trying. Bug: 34923693 Test: Ran A11y unit tests and a11y fingerprint cts. Change-Id: I48ad1c2c9c0c5739d8b1826c3c53bb817078e6cf
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
1e2758256a391be23c537725f0a7785e4fb5b7d0 |
|
07-Feb-2017 |
Phil Weaver <pweaver@google.com> |
Merge "Provide text locations to accessibility services."
|
edb54686c28951a4069f99ac5dcd1ae7101f89c5 |
|
07-Feb-2017 |
Casey Burkhardt <caseyburkhardt@google.com> |
Merge "Initial implementation of Nav Bar Accessibility Button"
|
c2e28932d22faece6e7179c78d4e7656dc63052c |
|
08-Dec-2016 |
Phil Weaver <pweaver@google.com> |
Provide text locations to accessibility services. Bug: 30170631 Test: New CTS tests on linked CL. Change-Id: I723e3777189c8df71c59dada00abdf339ebc983d
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
048c2bc19af4cfcb5e959f1bc07fbfa03a72e330 |
|
09-Dec-2016 |
Casey Burkhardt <caseyburkhardt@google.com> |
Initial implementation of Nav Bar Accessibility Button This allows an AccessibilityService to set a flag in its AccessibilityServiceInfo that triggers the navigation bar to show an Accessibility Button and observe callbacks when the button is clicked or there are changes in the visibility of the navigation bar. Test: Manual (Created a sample AccessibilityService) + CTS Bug:29231271 Change-Id: I03d653d85bc37df28ed71d8bba94b7c75fe56e43
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
6ed45d8cd33c297e608aba94fc1f61dace7a7cca |
|
22-Jan-2017 |
Eugene Susla <eugenesusla@google.com> |
CompanionDeviceManager This introduces an API for apps that support companion devices to provide a more streamlined flow for pairing and setting up the device Bug: 30932767 Test: Using a toy app, invoke the newly introduced API (CompanionDeviceManager), and go through the flow. Ensure filtering works, and device is returned to the calling app. Ensure the calling app can pair to the selected device. Change-Id: I0aeb653afd65e4adead13ea9c7248ec20971b04a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5cd907d3d6ceebf8731ef1f69347cce6f76109e9 |
|
26-Jan-2017 |
Wale Ogunwale <ogunwale@google.com> |
Alert Windows behavioral changes - Introduced TYPE_APPLICATION_OVERLAY window type. Can be used by apps to display windows on top of other app windows, but below critical system windows. - Deprecate alert window types TYPE_PHONE, TYPE_SYSTEM_ALERT, TYPE_SYSTEM_OVERLAY, TYPE_PRIORITY_PHONE, and TYPE_SYSTEM_ERROR. Apps should now use TYPE_APP_OVERLAY for this. - Apps targetting O or greater are not allowed to add the old alert window types. Apps targetting less than O can still add the old types. Apps with permission INTERNAL_SYSTEM_WINDOW (system signature apps) can still add the old types. - Z-order old alert windows types below TYPE_APPLICATION_OVERLAY if they are added by an app without the INTERNAL_SYSTEM_WINDOW permission. Test: android.server.cts.AlertWindowsTests Bug: 33256752 Change-Id: I12170955a7a333151d3387c169b51c53c32164fc
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
1f2b03a42a94b8b3c1d0dc80f8157e799b90b961 |
|
01-Feb-2017 |
Phil Weaver <pweaver@google.com> |
Merge "Correct accessibility check for current user"
|
8e839b6224de8d101b83f346942627dfbec484e9 |
|
01-Feb-2017 |
Phil Weaver <pweaver@google.com> |
Correct accessibility check for current user This fixes a bug I introduced in ag/1444443 as the result of missing a comment. Bug: 34077911 Test: Manually verified that EBT is no longer broken Change-Id: Iec7484c515f8b08ab2e04b4f513629cb6509ab7a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
27fcd9c97a2ceb50bab026237390207e5ee9e290 |
|
21-Jan-2017 |
Phil Weaver <pweaver@google.com> |
Accessibility can capture fingerprint gestures Bug: 27148522 Test: Unit tests for two new classes in this CL, CTS in linked CL. Change-Id: Icb5113e00b1f8724814263b3cc7f72fe4a6f0b41
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
106fe732050f3d75a08c3bc48fdbcf84cac20b41 |
|
23-Nov-2016 |
Phil Weaver <pweaver@google.com> |
New accessibility shortcut. Removing accessibility gesture from power dialog. Adding new accessibility shortcut activated by holding both volume buttons down. This shortcut is configurable by OEMs and users to work with any installed accessibility service. Bug: 30160335 Test: Added automated testing for the EnableAccessibilityController. Manually toggled various services on and off. Change-Id: I546bd29a2ab1ba64a0cbfd11e2004cdf85ee6cfd
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c1facb81e0949216789a3d9a94c6538cb0b9ee05 |
|
13-Jan-2017 |
Eugene Susla <eugenesusla@google.com> |
Merge "Only send cache event if cache is detected to be used"
|
4acc16d1b611074baa9eeb7ec5628350b7eb5fa5 |
|
15-Sep-2016 |
Phil Weaver <pweaver@google.com> |
Add flag and listener for a11y volume requests. We're adding a dedicated volume level for accessibility. Services can use the new flag to request that this volume be activated for accessibility usages. To let AudioManager know when the request state changes, adding a hidden convenience method to check if any active service requests the a11y volume stream. This method can be used to enable the stream and to decide when to show the UI to change its volume. AudioManager wanted a listener for changes to this flag, so rather than add yet another special-purpose listener, I've added one that gets called back whenever there are state changes in a11y services. These changes happen infrequently enough that we shouldn't need more targeted methods. Bug: 30448020 Bug: 27899567 Test: Adding CTS in linked CL. Change-Id: Ifc53314dc7d9a6ee3d50b04ebcc1a87280cafa5e
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
08ea4abe23af77aef734a068c8f4c54178b7de0e |
|
28-Dec-2016 |
Eugene Susla <eugenesusla@google.com> |
Only send cache event if cache is detected to be used Bug: b/32642665 Test: Repeat test of Icbdb91803b646fa06aaf11996d350f6f65c1e809 Change-Id: Ibc09ea5cb25e4ac021baed5b598d6ba7a76295bc
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
eb1375c091d9df48b11bc44e34527b52b63d8f96 |
|
21-Dec-2016 |
Eugene Susla <eugenesusla@google.com> |
Always propagate AccessibilityCache events Bug: b/32642665 Test: Steps: - Retrieve root AccessibilityNodeInfo - Change text on its child TextView - Wait for a few seconds to let the AccessibilityEvent propagate to the AccessibilityCache - Get the child AccessibilityNodeInfo from the root, corresponding to that TextView, and ensure that it's updated to reflect the text change Change-Id: Icbdb91803b646fa06aaf11996d350f6f65c1e809
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
4606a4ae89c08df107ebe265fbe6c256c3ec2fe9 |
|
21-Dec-2016 |
liangweikang <liangweikang900911@gmail.com> |
fix IndexOutOfBoundsException in AccessibilityManagerService..manageServicesLocked https://code.google.com/p/android/issues/detail?id=230754 Test: compile Change-Id: I9152d56445ab1e3320ae7359a47c82edf8fbeed0 Signed-off-by: liangweikang <liangweikang900911@gmail.com>
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
74f9e1b867acbf248dd1640ef4c3f514b0ec9743 |
|
02-Nov-2016 |
Phil Weaver <pweaver@google.com> |
Add null check to a11y interrupt. Also adding same robustness to interrupt that we have for sending a11y events. Bug: 32507871 Test: Ran a11y CTS. Verified manually with sample app that sends interrupt and accessibility service that crashes when started. That case used to crash the app, and doesn't anymore. Change-Id: I5cf05dcbb54ea23ae876cb3258dd206c55dce775 (cherry picked from commit 867ad35d9c676b5ba2047b0fc9a4006737e5c4aa)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
9a14b56b60062c0cd962607e4db61de0937331dd |
|
14-Dec-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Add null check to a11y interrupt."
|
867ad35d9c676b5ba2047b0fc9a4006737e5c4aa |
|
02-Nov-2016 |
Phil Weaver <pweaver@google.com> |
Add null check to a11y interrupt. Also adding same robustness to interrupt that we have for sending a11y events. Bug: 32507871 Test: Ran a11y CTS. Verified manually with sample app that sends interrupt and accessibility service that crashes when started. That case used to crash the app, and doesn't anymore. Change-Id: I5cf05dcbb54ea23ae876cb3258dd206c55dce775
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
2f165944ce6109134e7285a71da32d1a1647960b |
|
21-Sep-2016 |
Phil Weaver <pweaver@google.com> |
Support continuing dispatched a11y gestures. Test: Ran the tests in this CL, as well as new CTS tests for the new API. Bug: 29477207 Change-Id: Ie5aba553286e954f7afe76ccfa97a7e8be9d75af
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
2585033100755e8ce6cd43db15a7cfd67e7264a3 |
|
03-Nov-2016 |
Phil Weaver <pweaver@google.com> |
Add check for null manger for a11y recents action Bug: 31986988 Test: Ran A11y cts Change-Id: Ia6a1e1b921d8b0008edbcf1f1a8d1d3d0eb969c6 (cherry picked from commit 3cdd6c7654ff688b2dbd638e388bc56db7a020e2)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
02ea9b75878b83ba1f7a1fb057f9740a58eeb224 |
|
04-Nov-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Add check for null manger for a11y recents action"
|
a46f009bbfc693319290c273b4e647dea2eebe10 |
|
04-Nov-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Add tests for MagnificationController."
|
3cdd6c7654ff688b2dbd638e388bc56db7a020e2 |
|
03-Nov-2016 |
Phil Weaver <pweaver@google.com> |
Add check for null manger for a11y recents action Bug: 31986988 Test: Ran A11y cts Change-Id: Ia6a1e1b921d8b0008edbcf1f1a8d1d3d0eb969c6
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
89e3ffc66c5a05f188ff9748b48abebc247f664b |
|
19-Sep-2016 |
Phil Weaver <pweaver@google.com> |
Add tests for MagnificationController. Also refactoring the class to make it easier to test and chaning behavior where the current behavior seemed poorly defined. Refactoring: - Combined all handlers into one. - Simplified animation to use a ValueAnimator. - Eliminated ACCESSIBILITY_DISPLAY_MAGNIFICATION_AUTO_UPDATE setting. Move rest of settings reading into mockable class. - Move callbacks from WindowManager into the main class. - Pulled out my instrumented Handler from the MotionEventInjectorTest into its own class so I can reuse it. Behavior changes: - Always constraining out-of-bounds values rather than refusing to change them. - Constraining offsets on bounds changes. We previously left them alone, even if they were out of bounds. - Keeping track of the animation starting point. We were interpolating between the current magnification spec and the final one. This change means the magnification animates to a different profile. Test: This CL adds tests. I've also run a11y CTS. Bugs: 31855954, 30325691 Change-Id: Ie00e29ae88b75d9fe1016f9d107257c9cf6425bb
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ac2561e8206ac42921bb6ddbb0a5972fb360e394 |
|
01-Nov-2016 |
Wale Ogunwale <ogunwale@google.com> |
Make window token add/remove APIs require displayId Window tokens can now only be on one display, so we now require clients that want to add/remove window tokens to specify the display they would like the token to be created on. This simplifies the token handling code in WM and will be useful moving forward for clients that want to add windows to external displays. Test: Existing tests pass Change-Id: I6b2d8d58a913b3624f1a9a7bebbb99315613f103
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c413f7078d2a69badcb4a2326a4a3d55c25da020 |
|
07-Oct-2016 |
Fyodor Kupolov <fkupolov@google.com> |
Switch UM to internal isUserUnlockingOrUnlocked Internal version of UMS maintains a self-locking data-structure of user states that is pushed from ActivityManager. Previously there could be discrepancies between UMS.isUserUnlockingOrUnlocked and UM.isUserUnlockingOrUnlocked, which is calling a blocking version in ActivityManager. Test: manual + UserManagerTests Bug: 31995235 Bug: 31833240 Change-Id: Ibafe403f57cd32d9052bb55fe7273a861be1d037
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
65097bf83f12554fa847f50bfbbe3e40f516b705 |
|
05-Oct-2016 |
Phil Weaver <pweaver@google.com> |
Move a11y event dispatch back to ui thread. Test: Ran CTS Bug: 31753900 Change-Id: I0ba096cb99dd8347a7e9d6c41ff0aa8293dc5d15
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
151e88568f08f8237b98f19150fc74e6594db027 |
|
17-Sep-2016 |
Phil Weaver <pweaver@google.com> |
Fix bug in magnification coordinate calculation. am: 87d96992ea am: 77b279df94 am: 2967412d36 Change-Id: I964dbe0f850d3e7da23d1a07b9f65fa54043986b
|
af5d0765dbcda5c9694d1c34ab38236a8160a2f4 |
|
14-Sep-2016 |
Phil Weaver <pweaver@google.com> |
Change users without crashing a11y services. Accessibility services crash when changing users for several reasons. we were looking up permissions for the current user, which wasn't the user who created the service. We also end up resetting the accessibility state, which reads user- specific settings and thus must be done with the calling identity cleared. Bug: 27594523 Change-Id: I2b910d77704a6054b3a591c38f54d3ed3a2dc427
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
87d96992ea331bf1e1c1c20647bc47abed42edfb |
|
13-Sep-2016 |
Phil Weaver <pweaver@google.com> |
Fix bug in magnification coordinate calculation. We were checking if a coordinate was inside its window before compensating for magnification. Bug: 31054088 Change-Id: I4993d84e877fcf3d01382b3cf1c10e2fab58dbba
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
b0f9f777687c522d7936a6c8eceae8fd1e927730 |
|
29-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Fix crash when user changes after a11yservice dies am: e797b84ed2 am: 575e714616 am: ecf0962a64 Change-Id: I138041bd7f6781fd4ceaec52dff5e2bb9125574a
|
1bb2cc8cc3065923c9dc69a17dcdd0094f758a1d |
|
25-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Revert "Dispatch a11y events in separate thread."" into nyc-mr1-dev
|
5de2feab261831e2d6fbe28eab53b884860cd6ea |
|
25-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Revert "Dispatch a11y events in separate thread." This reverts commit c34649411d053185b3572c4cd924e6f14295d8cd. Dispatching accessibility events in their own thread is causing Chrome and gmail to crash. We've identified two issues: Chrome is allocating strings natively using references that aren't valid outside of their thread, and the text is being set to values that are changed in the UI thread. I'm going to resolve these issues on master by making deep copies of the strings, but that change will have its own performance implications. Since we were bit almost immediately by an unexpected result of this change, and I need to erode its benefit by making deep copies, I think it's a bad bet to push it into MR1. Bug: 31042124 Change-Id: I6f5c225a9197036db43fd0ac6008447b22617525
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e797b84ed2213c4a7267b3653bcda6f5bc7af01c |
|
25-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Fix crash when user changes after a11yservice dies We were failing to create a death link for the service that replaces the crashed a11y service. Adding an invariant that mService is always linked to death if it is non-null. Bug: 31044551 Change-Id: I98b6a3969cfacb0309e19938899a51c809249d6b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
0dbf913d78059a83944d85a4859429412f6d6054 |
|
23-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Merge ag/1290921 to master. Original commit: Dispatch a11y events in separate thread. Moves the IPCs into a separate thread, where they should affect jank a lot less. Bug: 30183085 Change-Id: I7bc8a777fe76dd76f661cc3e3e1d45a2a28df0d2
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c34649411d053185b3572c4cd924e6f14295d8cd |
|
04-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Dispatch a11y events in separate thread. Moves the IPCs into a separate thread, where they should affect jank a lot less. Bug: 30183085 Change-Id: Ib76159d158e7a867e76cdd5c8ea3a318949fcc5b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
669340c7851e512dff834dab57cb0005e4fd1a40 |
|
18-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Add null check in key event handling."
|
7f7588d3fb24c7fdae38ecc030668558d5dd5c5e |
|
18-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Restart accessibility services after they update. am: 1e6695bbd4 am: fff4a144de am: f49d1bab46 Change-Id: I27d86acb98d9cf19f89af036202af9b0a911eea6
|
771f9aefdc3b9e4327af1fbcf179ea9c6256e794 |
|
18-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Add null check in key event handling. Bug: 30866905 Change-Id: I4bc4c984026d7d2be594b816e3d6de60410970ef
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
921f8e35d82f567b21a2faba6032b6e8f4f6f70c |
|
17-Aug-2016 |
Chong Zhang <chz@google.com> |
resolve merge conflicts of 9391bc5 to master Change-Id: I6de231781233826b399688dc8ead70ba515b1ccb
|
fff4a144deae13f78eedd5caffb5d8efa46abda6 |
|
17-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Restart accessibility services after they update. am: 1e6695bbd4 Change-Id: I10714ce8ebc0b9ca6dd206a4a11e283704d668ae
|
ee4ff424ea01425e2b647a3017303442e52740aa |
|
17-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Restart accessibility services after they update." into nyc-mr1-dev
|
1e6695bbd44433564d42e20447aadf57c8d1b08e |
|
17-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Restart accessibility services after they update. In ag/1273924, we stopped restarting services that were still bound. When the package changes, however, the system unbinds from a service and has no way to tell us that it is not going to restart it (as it would if the service crashed.) Now we listen for package updates and unbind affected services. The services will then be restarted as there will be enabled services that are no longer bound. Bug: 30866905 Change-Id: I375edfd6a37ed25f959ec354930cec8f288deb6b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
fea963edeeb60c76465c0d644078def191f41e0f |
|
16-Aug-2016 |
Chong Zhang <chz@google.com> |
Add new window type TYPE_DRAWN_APPLICATION This type behaves like a normal TYPE_APPLICATION, except that WM will always wait for it to be drawn before starting a transition. WM always waits for TYPE_BASE_APPLICATION (main window), but for TYPE_APPLICATION, it only waits if the window relayouts to visible and gets a surface before the main window is drawn. If main window itself is ready very fast, transition could start without the other window. bug: 30830849 Change-Id: Ife71a9812db7c8eba6ee4ead10ce4f31d9e93b40
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
30cf918c4b916348fdc3d61fe9f227902479a1f0 |
|
11-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Limit capabilities of a11y gesture dispatch. am: a8918f23c7 am: 0e97bb6c1a am: 3d40beacfd Change-Id: I006b848679d7e605740e1e1e9eecddad7878873b
|
0e97bb6c1ad41031d85fe37a8a9e57b7321b5297 |
|
11-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Limit capabilities of a11y gesture dispatch. am: a8918f23c7 Change-Id: I8c14c8b8ada7e7c53b17be2df63c14c4e0e10c83
|
364580d20acd2c2aae34c37cc4bbd748c3890831 |
|
11-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Limit capabilities of a11y gesture dispatch." into nyc-mr1-dev
|
a8918f23c712e97fa1dc4911f64827d64fc906e5 |
|
05-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Limit capabilities of a11y gesture dispatch. Changing the service side to accept descriptions of motion events, not motion events themselves, so we can control their creation. Bug: 30647115 Change-Id: Ia6772a1fc05df91818e3f88959d1e2b4a35fe0cc
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ba5b372d96803cb8dd8bb5890b469383b0f55b82 |
|
06-Aug-2016 |
Phil Weaver <pweaver@google.com> |
Improve handling of crashing a11y services. am: a8cfb3733d am: 32c6f10a7f am: 5468790629 Change-Id: I34570f56688194857b61cf7163dfcf5494019c2a
|
a8cfb3733d7022d3a4be87f15701dbac7a17045c |
|
30-Jul-2016 |
Phil Weaver <pweaver@google.com> |
Improve handling of crashing a11y services. We were confusing handling of services that were unbound with those that had crashed. We would lose track of services that has crashed, start new ones, and then when the system restarted a killed services we would have multiple instances running. It was possible for this to get very out of hand. Bug: 30306689 Change-Id: I4e63d25b6d2fec3ec68f450a4602898c43a2b2ad
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f6d56f92fffa94c058951744f12a9194dc0f10f1 |
|
18-Jul-2016 |
Svetoslav Ganov <svetoslavganov@google.com> |
Merge "Update windows before sending a window state change event"
|
290c38567e48ba960e05da4d4ef5648c89e224ff |
|
14-Jul-2016 |
Justin Klaassen <justinklaassen@google.com> |
Merge \\"Refactor display color transforms\\" into nyc-mr1-dev am: 94673f0b7c am: 5f3bf63121 Change-Id: I06a60ef4a1fa23e0c1f5b6ab97462811b6aaf239
|
22eb19939d815856887f1329f41aa04b397505ff |
|
12-Jul-2016 |
Justin Klaassen <justinklaassen@google.com> |
Refactor display color transforms - Removed Secure.ACCESSIBILITY_DISPLAY_COLOR_MATRIX, it's not desirable to persist the actual color transformation matrix. - Refactored all SurfaceFlinger transforms to DisplayTransformManager, which allows color transforms to be set independently from the a11y manager service. Bug: 30042357 Change-Id: Iefa477dedb66aac90e1218e327802a3fab6899ed
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
fd138896d5fc0c4ec3e46ad923fa4935ceaabdeb |
|
14-Jul-2016 |
Svetoslav Ganov <svetoslavganov@google.com> |
Update windows before sending a window state change event Change-Id: Ie25b75ccc739dcacbbffd2b3a32fe65086882c64
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8c1e36b440e8484123604975620b8675f0ad64a5 |
|
25-Jun-2016 |
Phil Weaver <pweaver@google.com> |
Add tests for KeyEventDispatcher. Some minor but needed changes to the class under test to gain visibility for tests to do things like make events on Handlers happen on demand to verify various event ordering. Change-Id: I5096de697906f8d28b47f47dc2be2f8199ee4e19
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ee77b881a4187f6354ad669878db08ff74421b66 |
|
20-Jun-2016 |
Phil Weaver <pweaver@google.com> |
Report all content changes to a11y services. Changes were discarded if they arrived too quickly in A11yManagerService. Excuse content change events from throttling at this level. Bug: 29355115 Change-Id: Ifd9da07315ce0c18f59c1dad6a621110ad48343b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
37fc1c1ce4629973a101ab5cde41406bb6266793 |
|
12-May-2016 |
Phil Weaver <pweaver@google.com> |
Don't disrupt a11y state when user is unlocked. AccessibilityManagerService#unlockUser was assuming that we should switch to the unlocked user's state. If that user is a new work profile, this transition disables all accessibility features. Bug: 28726050 Change-Id: I3797d34b580d00642b204fff3fc9a07b720738e0
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
2fbdd48682c32407daff4fd6577c3838c7c7a220 |
|
02-May-2016 |
Phil Weaver <pweaver@google.com> |
Reduce cost of a11y services with magnification. Services that declare that they can control magnification, but never actually make a change or register a listener waste cycles as we compute magnification data they never use. Avoid registering for magnification callbacks unless magnification gestures are enabled, a service is listening for magnification changes, or a service has changed magnification. Bug: 28425922 Change-Id: I114a833669bd53b2cd757c94ea52b65a2f838a08
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
0f36545bb8a3db08cad3c5c64e7d3f3e7c2dbf26 |
|
02-May-2016 |
Phil Weaver <pweaver@google.com> |
Re-enable accessibility when UiAutomation closed. We need to read the settings when UiAutomation closes in order to configure other accessibility features from settings. Bug: 28461805 Bug: 28460671 Change-Id: I030761922ec4acfa2d916e171c39e9dc2deb85a2
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ce18c8167766f92856f94a8e88e19de4698960e6 |
|
28-Apr-2016 |
Jeff Sharkey <jsharkey@android.com> |
Introduce "unlocking" vs "unlocked" nuance. There is a narrow window of time during user unlock where we're reconciling user storage and dispatching the "unlock" status to various internal system services. While in this "unlocking" state, apps need to be told that the user still isn't actually "unlocked" so they don't try making calls to AccountManager, etc. The majority of internal services are interested in merging together both the "unlocking" and "unlocked" state, so update them. Clarify naming in AccountManagerService to make it clear that a local list is being used, which mirrors the naming in MountService. To match UX/PM requested behavior, move PRE_BOOT_COMPLETED dispatch after the user is unlocked, but block BOOT_COMPLETED dispatch until after all PRE_BOOT receivers are finished to avoid ANRs. Bug: 28040947, 28164677 Change-Id: I57af2351633d9159f4483f19657ce0b62118d1ce
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
1f70f0b7d60ad0b98fe6597162769bce8b85e3ed |
|
28-Apr-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Fix several accessibility magnification issues." into nyc-dev
|
70439244ba1abc4f32357d2ee8ff38f73158fe37 |
|
11-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Fix several accessibility magnification issues. Clarifying region used for magnification as "magnificationRegion", both in the public API and in the code. There's been significant confusion about what "magnfifiedRegion" means. Removing "availableRegion" from everywhere except where it's required, as that region was identical to magnified/magnification region. Trying to shut down magnification was a complex situation where animations in progress and new magnification requests were tricky to handle correctly. It was not possible to guarantee that the magnification callbacks were unregistered consistently. There were at least two situations that led to phone restarts: 1. If a triple tap was detected between unregistering the callbacks and shutting down the input filter. In this case the magnification request would go through. 2. If an animation had just started when magnification was turned off, so the current magnification was 1.0 but the animator was about to change it. In this case the callbacks would be unregistered, and then the animator would start changing the magnification. This change makes registering and unregistering magnification atomic. It also makes MagnificationController stick around indefinitely once it is created, registering and unregistering as needed to support magnification gestures and services that control magnification. Services that merely query the status of magnification no longer register for callbacks. One part of shutting down is turning off the animation and guaranteeing that it won't try to make further changes. Adding a flag to SpecAnimationBridge and a lock in that class so we can guarantee that nothing happens when we aren't registered for magnification callbacks. Also reconfiguring all accessibility options when a service stops to make sure that only the features required by the current configuration are enabled. Bug: 27497138 Bug: 27821103 Change-Id: If697cbd34b117d82c8eee1ba7d0254089ee4241d
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
b72c30653dc9652d9c6beba979e5ea194c1a4638 |
|
20-Apr-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Clear calling identity when binding a11y services" into nyc-dev
|
13ce4693d303c8c17494ddef9ac12fc0f901d040 |
|
20-Apr-2016 |
Phil Weaver <pweaver@google.com> |
Clear calling identity when binding a11y services When a UiAutomation is destroyed, accessibility services may get enabled as a side effect. That was causing these services to be enabled in a binder thread, which threw a SecurityException. Bug: 28268310 Bug: 28163652 Change-Id: Ie25ab05569b5b21b5f30e7d7eed24ef73b7ba159
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f2efdd8c7ca65745245a0ac26c681a8d376adb87 |
|
16-Apr-2016 |
Adrian Roos <roosa@google.com> |
Fix unprotected StatusBarManagerService calls Some Binder calls in StatusBarManagerService were left unprotected. They had no business being binder calls in the first place, so they got moved to StatusBarManagerInternal. Bug: 28222649 Change-Id: Ib26dcca413eb642ba8cd6a4482bf13071f8bd3ab
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
416bba7b467a5606798ef3d9013cdee2f0c39b1a |
|
14-Apr-2016 |
Svetoslav Ganov <svetoslavganov@google.com> |
Ensure injected gestures respect magnification Change-Id: Ie828f4be4eb1ec620549c1346ec7cc335908612f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
af93306a3db9c0a04d74809901cc297834bbba87 |
|
09-Apr-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Reduce unnecessary accessibility cache clearing." into nyc-dev
|
e37cfab6c65ec0997b07089e70fa0ad47d2fbd83 |
|
08-Apr-2016 |
Phil Weaver <pweaver@google.com> |
Reduce unnecessary accessibility cache clearing. Tracking if accessibility focus is being cleared because it is being set to another view in the same window. In this case, leave accessibility focus on the window. This change greatly reduces the amount of cache re-indexing. Previously we flushed the cache every time accessibility focus moved. Bug: 28077283 Change-Id: If80899d36e7f58b22635f844bdd4ea37a55b875e
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
21cafcd6628a36f844dee850dc653913bc3ef832 |
|
08-Apr-2016 |
Anna Galusza <agalusza@google.com> |
Merge "Fix issue where (accessibility) keyboard mode callbacks were not always called. Bug: 28007101" into nyc-dev
|
445fd2afe9336cecf76e41d78aa0b6f3b7053700 |
|
18-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Eliminate deadlock in magnification. Use the lock from AccessibilityManagerService in MagnificationController, since the two services call each other with locks held. Bug: 27725795 Change-Id: Iaed6749bf217210457325c3912da0f7aa0f6319a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c9eab5fa9021cd91c350cda7fa953b1e451138c7 |
|
06-Apr-2016 |
Anna Galusza <agalusza@google.com> |
Fix issue where (accessibility) keyboard mode callbacks were not always called. Bug: 28007101 Change-Id: Ie7f992243e5a71bc6fed74cbc0d242d652d7fc12
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
cd1e9ad83c0402d7e66a00783aecfa0046af2416 |
|
04-Apr-2016 |
Anna Galusza <agalusza@google.com> |
Merge "Fix bug where service disabled with disableSelf() would not reset soft keyboard behavior. Bug: 27947344" into nyc-dev
|
8a12f640fc479a860a2e55bb68c7e8f2a2549bc6 |
|
01-Apr-2016 |
Anna Galusza <agalusza@google.com> |
Fix bug where service disabled with disableSelf() would not reset soft keyboard behavior. Bug: 27947344 Change-Id: I19583cad14616416be3582c30653d244a27aa366
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
d4a19326085f2a68d568dfa754c29fd0ac49d193 |
|
04-Apr-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Add accessibility window title and anchor." into nyc-dev
|
b5e89c6debca90be92bf5bc2e0e79d109de6d08f |
|
02-Apr-2016 |
Jeff Sharkey <jsharkey@android.com> |
Support direct-boot tests. Add shell commands to check on current FBE status and system ready status. Mark variables without first-class locking as volatile. Fix bug where UI automation would crash while device was locked by marking it as forced direct-boot aware. Bug: 26498834 Change-Id: Ib4dfb9350925e5413f93a09baacf84c62f2ba0ea
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c71485abaf6e868fce8ee1c323c4a5ef8a85abe3 |
|
30-Mar-2016 |
Anna Galusza <agalusza@google.com> |
If the AccessibilityService requesting the soft keyboard to be hidden is stopped, make sure the keyboard is hidden. Bug: 27886621 Change-Id: I63ecc0c9506a60cd07660208d37cd6a0bfd5752d
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
396d549113bc633f719acc643c7dfc5f2a8fae4e |
|
23-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Add accessibility window title and anchor. Plumbing through the title of windows so support multiwindow accessibility. Adding ability to determine the anchor of a pop-up window so the pop-up can be traversed as part of its anchor. Bug: 27687627 Bug: 8449376 Change-Id: I59e98a29fb90029407a26de5bf3d900fed5dd627
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
3eca3cd33497d44953418f8c6d9de4a00015d64f |
|
25-Mar-2016 |
Muyuan Li <muyuanli@google.com> |
Merge "Refactor enableAccessibility to AccessibilityManagerService" into nyc-dev
|
2ec58a65d2b976d75a063f83bfcb3d1fac5e51e1 |
|
23-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Fix ACCESSIBILITY_ENABLED settings." into nyc-dev
|
517a3e07611657f36ec85b9cf52d9430edf38adc |
|
23-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Fix ACCESSIBILITY_ENABLED settings. A typo meant that the setting reflected the exact opposite of what was intended. Bug: 27781201 Change-Id: Icb0d4d585399f147b319093be57d708af4c6dfdc
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
16b8251c89743dab939ccfc79fb6f64d0df6aaae |
|
19-Mar-2016 |
Muyuan Li <muyuanli@google.com> |
Refactor enableAccessibility to AccessibilityManagerService enableAccessibility is refactored from EnableAccessibilityController to AccessibilityManagerService. Also added are 2 methods disableAccessibility, and isAccessibilityEnabled. Bug: 27645255 Change-Id: I32d75ed6617b8bcf82bbee0dd5ee776f430fb386 (cherry picked from commit 84da556422d50e43eb674061cc454f331104d493)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
45ebfd339f7f2aea83f789b8c6815092e65c592a |
|
21-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Fix decision handle accessibility events." into nyc-dev
|
6fdd3afdcc43c1dec03ee82e9e1d69e88170d932 |
|
17-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Treat accessibility actions as user activity" into nyc-dev
|
8a372a0a280127743ce9a7ce4b6198c7a02d2a4f |
|
16-Mar-2016 |
Jeff Sharkey <jsharkey@android.com> |
Refactoring FBE APIs based on council feedback. Mostly consists of removing the word "encryption" from most APIs, since we can't actually make promises about the data being encrypted. Bug: 27531029 Change-Id: Iace9d7c4e64716abf86ed11847c40f3947e1d625
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
da80d676c70fa07d4efe566b2c74b3fbc61805b0 |
|
16-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Treat accessibility actions as user activity Resurrecting ag/665912. Bug: 19531976 Change-Id: Ibdddd507215e61b9f4313c36eab8845e9940a7ac
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
9b0081df70f38fc195423a9338183b348ae412c6 |
|
10-Mar-2016 |
Phil Weaver <pweaver@google.com> |
Fix decision handle accessibility events. This was a typo in the original CL. Change-Id: Iddb2a6ac6848e3ee91694befa1835e56ce50d470
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
6ca619fe1aff489e1227b0db6a77c96e973a1db3 |
|
08-Mar-2016 |
Muyuan Li <muyuanli@google.com> |
Partial screenshot Added a partial screenshot function in TakeScreenshotService also added corresponding shortcut keys in PhoneWindowManager Bug: 26820467 Change-Id: Id67cd3b4b0eed848eb4665056766546500bdac88 (cherry picked from commit 03e45541e9d54a2f285906ac7b5bcb374db14495)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
54677d2a55592be77d23e36b97a8a4a7d4b7c9f8 |
|
29-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Control AccessibilityServices with one setting. Accessibility services were controlled by two settings: ENABLED_ACCESSIBILITY_SERVICES and ACCESSIBILITY_ENABLED. These settings needed to be changed together, and race conditions could creating inconsistent states as ACCESSIBILITY_ENABLED was also changed by the framework itself. Restructuring to keep ACCESSIBILITY_ENABLED up-to-date, but not to use it to decide whether or not to enable accessibility. Enabling is controlled solely by ENABLED_ACCESSIBILITY_SERVICES. Bug: 27455234 Change-Id: I9ab1e5936080c1b0dd8410dd6e8666e7f6eaccf3
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8c8e55904a8f9c5694bdcbc587fb140159060c90 |
|
26-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Control magnification only with the setting." into nyc-dev
|
6cb67af65fc0e242ecb0de38620f00dafc67886c |
|
26-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Control magnification only with the setting. Don't turn off magnification if gestures are enabled. Bug: 26571116 Change-Id: I8dafcd4eef50bfa8f9474bf98637f8e54f3527e1
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8ca583b29f7a06dcd2ccb2da7c4273d4db8bf7fd |
|
26-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Accessibility to toggle multiwindow mode" into nyc-dev
|
315c34e7d62ce4b609f2d08b18a11a2d44e93aba |
|
20-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Accessibility to toggle multiwindow mode Encapsulating the logic to toggle multiwindow mode from recents, and plumbing it through to accessibility global actions. Sending accessibility events when windows bounds change. Exposing the dock divider window type to accessibility services. Bug: 27250995 Change-Id: Ib7491f1f853dc7f01bf5c5a4ac1f914f55d0608a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e88e2665471c7b620fd3b1baca024fc9e705ee32 |
|
24-Feb-2016 |
Jeff Sharkey <jsharkey@android.com> |
Update accessibility to be encryption-aware. Look for both EA and non-EA accessibility services, but when the user is locked only bind to EA services. Once the user is unlocked, we take another pass and bind to any non-EA services. We only consider disabling accessibility once the user is unlocked, since there could be non-EA services waiting in the wings. Bug: 25860579 Change-Id: I97bd019661457c3577d629ba12290d02f026011a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
c42d933b56f889b3d36f253b8f6b6560021cd432 |
|
20-Feb-2016 |
Svet Ganov <svetoslavganov@google.com> |
Clear binder id before creating pending intent as the system. bug:19349693 Change-Id: I989441ac32b89d313ec7a006373faa90f58fc89d
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
cc494765faea28adeca7584d75c97933ffaf309b |
|
09-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Merge "Clean up UiAutomation working alongside a11y." into nyc-dev
|
78d2e2ddf07414eb342094ad8cf9d830b2220528 |
|
02-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Clean up accessibility gestures. Closing two small holes in the implementation: 1. The gesture was dispatched before the callback was registered. It was possible for gestures that failed quickly to fail to report any status. 2. Gestures could be dispatched before the input filter was installed. Adding a wait to give the filter a chance to install before reporting a failure. Also removing an unused method on the input filter. Change-Id: I77cd80dcd2cec6c72b3761169aba5eaecf62250b (cherry picked from commit 03465fb874ccf35ead2228b66ec03afc31d7694e)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f564afa4cd17ba4b259e2b1ee01f061d12fd0fe2 |
|
02-Feb-2016 |
Phil Weaver <pweaver@google.com> |
Clean up UiAutomation working alongside a11y. Fix two bugs: one where Instrumentation did not properly handle destroyed UiAutomations, another where UiAutomation did not properly disable running accessibility services. Change-Id: I1773dbd373f4d5b0e7c9917ff18d8d9b1a0e07c7 (cherry picked from commit 846522cea043d3113b3b96daa8f3a1b70e3beb5e)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f3e5d1d483231d615f5e77032f787fcd8047488b |
|
29-Jan-2016 |
Anna Galusza <agalusza@google.com> |
Merge "Add API for IME control by Accessibility Services."
|
1dd872260b3ccfbe492d1be0bdbb3f98235b3ba3 |
|
27-Jan-2016 |
Phil Weaver <pweaver@google.com> |
Optionally support accessibility with UiAutomator Adding a flag to AccessibilityServiceInfo that only works for UIAutomator that supresses other services. This flag is set by default for UIAutomation to match the current behavior, but tests may clear the flag and enable other services. Needed to improve cts coverage of AccessibilityService. Bug: 26592034 Change-Id: Icfc2833c1bd6546a22a169008d88a6b15e83989c
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
9b278112467581e2b8d99f29cf48b9fbef9cc53f |
|
04-Jan-2016 |
Anna Galusza <agalusza@google.com> |
Add API for IME control by Accessibility Services. Change-Id: I3bb806cf420e0551a2c9ef97d95613f73e362df9
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
a3a1ea3dbe96405a69765d4740a73a37ab240df4 |
|
25-Jan-2016 |
Svetoslav Ganov <svetoslavganov@google.com> |
Merge "Clear binder calling identity before mutating secure settings."
|
81fcf7037b86fd9cb1592359d08a1bd5992c6fc1 |
|
25-Jan-2016 |
Svet Ganov <svetoslavganov@google.com> |
Clear binder calling identity before mutating secure settings. The accessibility manager service changes secure settings without clearing binder calling identnty. Luckily it worked for a long time as the calls resulting in a secure setting change were not made on a binder thread. Now we clear calling identity before mutating secure settings - note that we alsways do this after a security check, hece it is safe. bug:26766532 Change-Id: Icb188e6de1a134f38de0bdb23c67fa4ff2806ba4
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
a9e7a3bbe859a8416e54be28bd1f055df60074e5 |
|
15-Dec-2015 |
Jinsong Mu <jinsong@google.com> |
Accessibility services can turn themselves off b/22514381 Added disableSelf() method to AccessibilityService This newly added api used used in https://googleplex-android-review.git.corp.google.com/#/c/833857/ Change-Id: I5fe60181058ef90dd496318cf270e0825bcc411a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e2239c9346b9efb8c879c1925d90f70c4eb2405c |
|
13-Jan-2016 |
Fyodor Kupolov <fkupolov@google.com> |
Explicitly pass userId to getWindowToken UiAutomationConnection.clearWindowContentFrameStats method currently clears calling identity before calling mAccessibilityManager.getWindowToken. This doesn't work properly when a call is made by a secondary user, because it wouldn't pass a check in getWindowToken. This is now fixed by explicitly passing ID of the calling user. Bug: 26498396 Change-Id: I8f0cdde33e18f04adb1833c6c0d0c329de921018
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
a6b64f5099b7be6e8384958d8bcddb97bb06ec93 |
|
05-Dec-2015 |
Phil Weaver <pweaver@google.com> |
Gesture dispatch from accessibility services. Add public APIs to describe gestures and dispatch them from an accessibility service. Added a new capability that services must declare to have this capability. Bug: 22514086 Change-Id: I9bff2d9335f0310115112d14b7ed033a6d6c2393
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
08e7fa9b6918f442669970aa0dc048625424c07b |
|
08-Dec-2015 |
Jason Monk <jmonk@google.com> |
Allow color matrix to be controlled by secure setting Change-Id: Ia5518ad79fae502e814034edd7ae8d7a57b3eaeb
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
14ed6cf3e7bada4932314969000d384bed6d3f92 |
|
20-Nov-2015 |
Phil Weaver <pweaver@google.com> |
Ignore feedbackType in AccessibilityEvent dispatch Send AccessibilityEvents to all accessibility services that request them. No longer refuse to send them to services with the same feedback type. Change-Id: I137905c24fc75c075ab938175ecb6ea5f39112cf
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
b76bbd8e50feb134c5782e5b4c4f0e488a95b701 |
|
20-Nov-2015 |
Phil Weaver <pweaver@google.com> |
Merge "Dispatch key events to multiple a11y services."
|
5915658c885e6832bb012461c2a79237f0d15133 |
|
17-Nov-2015 |
Phil Weaver <pweaver@google.com> |
Dispatch key events to multiple a11y services. Introducing a new class to manage key event dispatch that sends all events to all classes that request them. Bug:22332500, 22515057 Change-Id: I8521f6257a4ac6c8f2eff14186789630d680ff11
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
214fb68767502f5fede643a062c1dc5975d75b27 |
|
17-Nov-2015 |
Alan Viverette <alanv@google.com> |
APIs for querying and controlling display magnification Also separates magnification state and touch event handling. Moves callbacks for window manager changes and display state changes into the magnification controller. Bug: 22718911 Change-Id: I3a8ba060a07d8f1f51856855a5f85601766fd45d
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
57525a7054f16c198f463b1cf27988243bb96248 |
|
29-Oct-2015 |
Alan Viverette <alanv@google.com> |
Refactor MagnificationController out to its own class First step in moving ownership to AccessibilityServiceManager so that we can implement the magnification control APIs. The magnification Region and the current/sent MagnificationSpecs are now private to the controller, and all access is handled through accessor methods. Comments have been added to all public accessor methods. Bug: 22718911 Change-Id: Ia50ee93513785585aac5424543fc1d730b84bd90
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
94ce21094d7a6289c888492632765d2a83624853 |
|
15-Sep-2015 |
Toni Barzic <tbarzic@google.com> |
Always reload AccessibiiltyInputFilter on user switch Makes AccessibiilityInputFilter aware of current user ID, and pasess the user ID to event stream filters that have per-user parameters: - AutoclickController -> for per-user autoclick delay - ScreenMagnifier -> for magnification scale While doing this, make AccessibilityInputFilter.disableFeatures private, and replace usage in AccessibilityManagerService with setUserAndEnabledFeatures with feature flags set to 0: Using disableFatures directly leaves input filter in inconsistent state where internal mEnabledFeatures flags don't match real state of enabled features. BUG=23113412 BUG=24265227 Change-Id: Ib295f4c08de1a3743e55714459844b6d80787637
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
466f3216505bd039a285881e06ead631331fe368 |
|
22-Sep-2015 |
Filip Gruszczynski <gruszczy@google.com> |
Showing docked stack divider window. When there is docked stack, we want to show a "handle" through which the user will resize the docked stack. We add it from the system process, because we want to avoid IPC calls. Change-Id: If15fd2a0fcb7077446d1ba6c533acb3028a42039
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
386f8349709380143f9bf38b41d8dffe736075bf |
|
09-Sep-2015 |
Toni Barzic <tbarzic@google.com> |
Introduce settings for Automatic click when mouse pointer stops Settings in question are: - accessibility_autoclick_enabled -> Whether the feature is enabled - accessibility_autoclick_delay -> Amount of time mouse pointer has to stay still before performing click Enable/disabled AutoclickController event stream transformation (which implements the feature) based on the accessibiilty_autoclick_enabled value BUG=23113412 Change-Id: I8178d10c09d86713bb4c725c95268a7c5f432eb4
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
a826b8c24c45443271567cae4cde6db04f147a7c |
|
02-Sep-2015 |
Xiaohui Chen <xiaohuic@google.com> |
Cleanup USER_OWNER in a11y service and tests I need to make some changes to get the tests pass. First a11y service will now disable when no service is specified, I need to re-enable a11y after services are enabled. Second the old event used in tests seems to be filtered out by the service, I need to pick a new event. Also the timeout waiting for mock service to start is extended, I hit the old timeout quite often with N9. Bug: 19913735 Change-Id: I8fe1b7b5d93b6a52df0a8940a08761ea5fbf5084
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e85da2bad5b80f4e2269a64255cbaf8c11efce61 |
|
26-Jun-2015 |
Jorim Jaggi <jjaggi@google.com> |
Add accessibility event for assist disclosure Bug: 21568059 Change-Id: Ib51d4236fcc87acd54cb5d191197b9b2c6cc54ea
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
b3876474399ae22ccfc8f04d7f9ab577517db370 |
|
04-Jun-2015 |
Svetoslav Ganov <svetoslavganov@google.com> |
Merge "Make node retrieval methods in AccessibilityManagerService use separate Region instances to make them thread safe." into mnc-dev
|
386a824384a0d5795a38d10d1d2c18e4e50f8c30 |
|
03-Jun-2015 |
Nirmal Patel <nirmalpatel@google.com> |
Make node retrieval methods in AccessibilityManagerService use separate Region instances to make them thread safe. b/21087793 Change-Id: Ice690e3d7494788fb9e1e234a54f14831bd4e0d3 (cherry picked from commit ebd8eb4610d6bb9322a374f8965a78ba1c39ee63)
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
942bc58518a82bc3dbeffe4d64f9a5d2d2d8cf43 |
|
01-Jun-2015 |
Doris Liu <tianliu@google.com> |
Fix calls to Rect.intersect(Rect) This CL checks for the return value for Rect.intersect(Rect) for whether there is actually an intersection before taking the calling rect as the intersection. In the case of no intersection (Rect.intersect(Rect) returns false), the calling rect would not have been changed, so here in this CL it will be manually set empty. Bug: 7368679 Change-Id: I7494c1a1649eca09e34412f0a59b795e8b3a82aa
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
d69e4c1460017062e7c36be55801cb434ad19d97 |
|
24-Apr-2015 |
Dianne Hackborn <hackbod@google.com> |
Update use of procstate for services. Now that we have a separate foreground service proc state (above a sleeping top app), update various system services to put their bindings into this state when appropriate. There are two new bind flags for this -- one that just always makes it a foreground service, another that only does it when the device is awake (useful for things like the wallpaper). And with all of that, tweak network policy manager to only include apps that are at least foreground service state when in power save and device idle modes. This will allow us to further reduce the set of apps that have network access (in particular not giving access to the current top app when the screen is off), hopefully leading to even better battery life. Change-Id: I91d85a5c5ed64e856149e9a5d94a634a7925ec7f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
0a4dc2258fa8216920e1a0b83cbf7d3729386e2f |
|
14-Apr-2015 |
Wale Ogunwale <ogunwale@google.com> |
Added TYPE_APPLICATION_ABOVE_SUB_PANEL window type. TYPE_APPLICATION_ABOVE_SUB_PANEL will be displayed on top of their attached window and any TYPE_APPLICATION_SUB_PANEL panels. Bug: 20135562 Change-Id: I711de3c19c01432c44de205bf09934a8b23b53fd
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
2d4aadca9487d76cb7220bdba90afa53119664ea |
|
17-Mar-2015 |
Christopher Tate <ctate@google.com> |
Merge restored accessibility enable state, don't overwrite We do not want to accidentally disable the user's currently-enabled accessibility service(s); presumably they turned them on during setup for a reason. We now merge the prior + current states rather than simply replacing the current state with the former. Bug 19427367 Change-Id: I96eb47df57318c88066c5da6862f23f656639148
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
7e760ee59d77f0e8cbdd4c64c1d4bf0b89113878 |
|
03-Feb-2015 |
Svetoslav <svetoslavganov@google.com> |
Fix broken activation of the selected view in accessibility mode. automerge: ded133c automerge: b6b526e automerge: f8acd7a * commit 'f8acd7a961f3a36712519d0f925f86f3da8d0b7c': Fix broken activation of the selected view in accessibility mode.
|
ded133c446fa9d0d23e6bde19a66fb2ce3980491 |
|
31-Jan-2015 |
Svetoslav <svetoslavganov@google.com> |
Fix broken activation of the selected view in accessibility mode. We were using an approximation to determine where to send a pair of down and up events to click on the view that has accessibility focus. We were doing reverse computation to figuring out which portion of the view is not covered by interactive views and get a point in this region. However, determining whether a view is interactive is not feasible in general since for example may override onTouchEvent. This results in views not being activated or which is worse wrong views being activated. This change swithes to a new approach to activate views in accessibility mode which is guaranteed to always work except the very rare case of a view that overrides dispatchTouchEvent (which developers shouldn't be doing). The new approach is to flag the down and up events pair sent by the touch explorer as targeting the accessibility focused view. Such events are dispatched such that views predecessors of the accessibility focus do not handle them guaranteeing that these events reach the accessibiliy focused view. Once the accessibiliy focused view gets such an event it clears the flag and the event is dispatched following the normal event dispatch semantics. The new approach is semantically equivalent to requesting the view to perform a click accessiblitiy action but is more generic as it is not affected by views not implementing click action support correctly. bug:18986806 bug:18889611 Change-Id: Id4b7b886c9fd34f7eb11e606636d8e3bab122869
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8a1d65b76adaa07fd6b16f205757d663e0fbf486 |
|
24-Jan-2015 |
Svetoslav <svetoslavganov@google.com> |
Accessibility: Sometimes cannot interact with nav bar items. automerge: 10a053e automerge: db1983b automerge: cd2ed4e * commit 'cd2ed4e64c501a5dbf73941a4a1f1e4bc639ebf3': Accessibility: Sometimes cannot interact with nav bar items.
|
10a053e474e2a566b49a1e4c9e2ec4c8cc0013bd |
|
23-Jan-2015 |
Svetoslav <svetoslavganov@google.com> |
Accessibility: Sometimes cannot interact with nav bar items. If there is a window with the accessibility focus we want to click on the accessibility focused view in this window. The logic to compute the bounds of the window was using the wrong window id, hence getting an incorrect result. As a consequence in some cases the user could not click on accessiiblity focused controls in the nav bar. bug:18889611 Change-Id: I89aee3ae2ffe27fe29819049c287a7155154c65b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e5aa1f52589a64367aadc9a83b094c2513491e9c |
|
07-Jan-2015 |
Jinsong Mu <jinsong@google.com> |
Make talkback or other accessibility services updateable from playstore only when it's been enabled. The idea is to set accessibility services package status to disabled_until_used by default. Change the status to enabled once user turn the service on. It is first part of CL in framework, that returns installed accessibilityServices even they been set disabled_until_used Second part of CL will be in Settings, where we read/write package status based on the service has been turn on or off. The similiar logic has been used for preventing never used IME from auto updated b/18205549 Change-Id: I1a9cba0221e3de0499ba5ac91ca382696bcb7043
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
14e3351a1eae2b4fc8a12c9a4586f8ea7b87442c |
|
12-Dec-2014 |
Svet Ganov <svetoslavganov@google.com> |
Merge "Fix a NPE in AccessiiblityManagerService." into lmp-mr1-dev
|
09687064f4cf681d2aa299c393e32f22fc013c96 |
|
12-Dec-2014 |
Svet Ganov <svetoslavganov@google.com> |
Fix a NPE in AccessiiblityManagerService. It is possible that the accessibility windows list is null which is treated as if there is no window information. The getWindows method was accessing properties of the windows filed witgout a null check. bug:18522998 Change-Id: Ieefe678d3da3d6e8f96c0e4bedac0c55975621fa
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
12b7328c0b7f83a233d9387eaa66d1a0ed403724 |
|
09-Dec-2014 |
Svet Ganov <svetoslavganov@google.com> |
Ignore accessibility overlay when computing window's interactive region. If an accessibility service opts-in for the new window introspection APIs when calling into a window for accessibility node infos we compute the window's interactive region, i.e. the portion that is touchable and not covered by other touchable windows, in roder to deterine whether these nodes are visible, i.e. the user can interact with them. There was a bug in the interactive region computation what we were not ignoring accessibility overlay windows which are intended to not change what an accessibility service can "see" and are put by such a service. bug:18652374 Change-Id: I24ce54069087af9bc308e0c6a7b2aa6b952a6136
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
3a0d878ab56475276c61d574af7651820a5cea5a |
|
04-Dec-2014 |
Svetoslav <svetoslavganov@google.com> |
Ensure all events from a showing window are dispatched. Accessibility services may opt-in to introspect the interactive windows on the screen. If window introspection is enabled there is a case where some events from a showing window are received before the updated window state from the window manager. Now the window manager sends over the windows before notifying the app for the focus change. bug:18625996 Change-Id: Ic481e01efbe12dc92f090f799feeb236672fc7b3
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
3a5c721072c60c7ed9c8a95d0a65d0e3cb4eb9bb |
|
14-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
APIs for an accessibility service to put interaction tracking overlays. An accessibility service may register to observe the interactive windows on the primary display. These windows are the one that has input focus and ones a sighted user can touch. It is sometimes beneficial for an accessibility service to overlay a window to intercept user interaction and based on that introspect and perform an action on the windows that are on the screen. This is problematic as overlaying a full screen window that is touchable prevents the accessibility service to introspect the content under this window. This change adds a special type of window that only an accessibility service can place which does not affect what an accessibility service can "see" on the screen. Hence, even putting such a window full screen the service will be able to interact with the other interactive windows it covers. Change-Id: I053ccc3a5c6360a98dc40bdb172b54dab35d8b31
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5f978bfa0949d58a187dec0fe9ee6b341cb97c1f |
|
20-Oct-2014 |
Adrian Roos <roosa@google.com> |
Merge "Retire RecentApplicationsDialog" into lmp-mr1-dev
|
5d6041813283086c5a290ad6ca07e05b1a6ffc14 |
|
18-Oct-2014 |
Kristian Monsen <kristianm@google.com> |
Merge "Let TYPE_ANNOUNCEMENT be sent from any window" into lmp-dev
|
a6711ff6f09cc25c693cbb50452e3f807c6122f5 |
|
17-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Accessibility no longer overrides strong encryption. Updating the accessibility layer behavior to reflect the new model where accessibility no longer overrides strong encryption. Now enabling an accessibility service lowers the encryption level but the user can bump it up in settings if desired. bug:17881324 Change-Id: Ic60d760c267d3f934040a42e1963b179bd8b9f5f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
ba3787d849610a7c71fc6f0d9468855c3d369807 |
|
17-Oct-2014 |
Kristian Monsen <kristianm@google.com> |
Let TYPE_ANNOUNCEMENT be sent from any window Part of fix for bug 17905712 Change-Id: I4e4b09f6b6342a27744e42984d483ef8de18fbff
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
d5b0842a1ddbfc2ea5335854fe2834b6e9b965de |
|
16-Oct-2014 |
Svet Ganov <svetoslavganov@google.com> |
Send accessibility events with no window. An app can send an accessibility event by calling the send methods on view or directly asking the accessibility manager to do that. While the recommened way to send such events is calling the methods on view a legacy app or app whose developer did not read the docs carefully may be calling the accessibility manager APIs directly. In such a case the event does not have assigned window id and does not get send. Since events fired by using the accessibility manager directly lack context to determine whether thier source is important for accessibility we assume they come from an important view to avoid breaking backwards compatibility. bug:18001711 Change-Id: Ie1c298fa5a0670cbeaedfcd64f820961c296b6ca
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
9a64513c7fccc2a9cf331a384906a7669b29b3f4 |
|
08-Oct-2014 |
Adrian Roos <roosa@google.com> |
Retire RecentApplicationsDialog Bug: 5162991 Change-Id: I429da977502f33e2091496f3a075b2c507a88e1f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8ff6d70d44626cd515f517962378d89ab3954979 |
|
04-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Clear identity before calling into the mount service." into lmp-dev
|
9f70a4cc6dbdd7b509527cef892e8af3c8b09702 |
|
04-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Clear identity before calling into the mount service. bug:17787265 Change-Id: I4b9268d101e9ccfc30876fbf54bf28bb41fb4be6
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
47b9c1524fe20b9ae2b210acdcad64f764df68e0 |
|
04-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
TouchExploer computes incorrectly the click location. If there is accessibilty focus and the user touch explores location that does not change accessibility focus that is not in the app window, e.g. system bar, double tap does not click on the system UI affordance. bug:17588024 Change-Id: I6c8c0f65b208ae1d3f31d7f06b0721dc223ec19f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
76716c5a180aa471c6973ca7aa03c7f2da677823 |
|
03-Oct-2014 |
Svetoslav Ganov <svetoslavganov@google.com> |
Revert "TouchExplorer computes incorrectly the click location." This reverts commit 851a5059a47cbf76e530c9d050a677cb6e3f8657 as it creates a regression. Let us revert this and correctly fix the issue the original change was trying to address. bug:17789608 Change-Id: I8abb1a61d5310430e839e4ef60e7ca5cc0cbdd80
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
d35b072dca42d249c219c886322c122739b086d7 |
|
02-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Fix accessiblity introspection from the shell user regression." into lmp-dev
|
ceac51deddb873956c647d1b2dc7b2cc251d404b |
|
01-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix accessiblity introspection from the shell user regression. Accessibility introspection APIs are meant to query only the state of the current user. There are command line tools that run as the shell user and want to be able to intropspect the screen. When resolving the calling user we were using the calling user id instead of the special constant for the current user. Now when resolving the calling user for intrspection we are using the current user constant and consequentially only the current user or a profile of the current user or the root or the shell or the system or an app with cross user permission can introspect the screen. bug:17674631 Change-Id: I36d1d7b65441d04c3b4204123c4b6d036ff032c0
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
6b491b64ba7200a85199452b6a7f99c777105f22 |
|
01-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Invalid accessibility state if UI test process crashes in a bad time." into lmp-dev
|
419036b560e79c11705e376ad171688ac496bb7d |
|
01-Oct-2014 |
Svetoslav <svetoslavganov@google.com> |
Invalid accessibility state if UI test process crashes in a bad time. We allow a fake accessibility service to connect to the system for UI automation. If the process hosting the fake service dies right after registering it, the accessibility layer ends up in a bad state and subsequent attempts to connect UI automation service fail. bug:17725904 Change-Id: Idad288eab41bbdd486d95e1e5803220640653fb7
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
16e4a1aade2b73edfdaa42aa86a3893fd039fc62 |
|
30-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Use default encryption password if an accessibility service is enabled. When device is encrypted the user has to authenticate in order to decrypt the data partition which is required for running accessibility services and Text-To-Speech. In order to address this issue we are falling back to use the default password if there is an enabled accessibility service and the user has secure lock. This will enable the user to authenticate when accessibility layer is completely functional. bug:17671790 Change-Id: Iafffe7bcd234008cf91ffb5011b21b803dca227a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
54b0a05b00226c2c9064a61297857ae7d15fc4ed |
|
26-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Invalid active window if temporary disabling accessibility for test tools." into lmp-dev
|
3f92ffc369c31c98620e22b66366adb93c60a5f8 |
|
26-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Invalid active window if temporary disabling accessibility for test tools. If accessibility is enabled and a test tool based on the accessibility APIs connects to the system we suspend the current accessibility services while the tool is running (to avoid inteference as the tool is such a service) and after the tool disconnects we restore the accessibility state. The issue is that when clearing the accessibility state we were also wrongly clearing the active window. We are now careful to not clear the active window in such a case. It is also possible that the active window was never initilaized before the tool is run so now it is lazily loaded such that if we do not know which one it is, we get the one the has input focus. The definition of an active window is the one that has input focus or the user is touching. bug:17663432 Change-Id: I8868866a5126c590d3bddad099ababb97978227a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
471157821f7b0933c55081ef4625c78f8e798de7 |
|
26-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Accessibility in bad state after using SDK tool uiautomatorviewer." into lmp-dev
|
dd81183bbea34109e1ae2d75667fe4784be6132f |
|
26-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Accessibility in bad state after using SDK tool uiautomatorviewer. The UiAutormator tool is a part of the SDK. If it is run while accessibility is enabled it stops all accessibility services as it is an accessibility service itself to avoid interference and when done restores back the accessibility state. The issue was that the accessibility state is not restored leaving the device in a bad state. bug:17662770 Change-Id: I3c4f46fa05c76b874eeffdeb867ef433c3fedf2e
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8aeb0912945ae103223b76d81579073e51579efe |
|
25-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Accessibility events may be fired even if no services observe them. If all accessibility services are disabled we turn off event firing to avoid a lot of work for nothing. The logic to do that had a flaw and was not turning event firing off in every case it should. We were tuning event firing if it is on and no service is enabled but it is possible that a package on the system image is disabled so the service is enabled just not bound. Arguably we can remove the serivice from the enabled list but it is technically on the device. Note that we correctly handle the case of a package being removed. bug:17332506 Change-Id: I6d6d9cb9cc271116a3d22ed9fd8d7f533dec9a0b
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8d412fe18b9ce8cf71ce57c380e7f312e4667667 |
|
20-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
TouchExploer computes incorectly the click location. If there is accessibilty focus and the user touch explores location that does not change accessibility focus that is not in the app window, e.g. system bar, double tap does not click on the system UI affordance. This is due to obsolete logic from the time where accessibility focus was only in the active window at the time of double clicking. bug:17588024 Change-Id: Ib780103e873d8a2afd3b35de3227d54116f1a1b0
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
4c6a4ce03bb5b20103a656948a1932f2894e7f56 |
|
18-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Some accessibility events wrongly filtered out (regression). We added new APIs to allow accessibility services to query all windows a user can touch. Sometimes the window state change event arrives before the window manager sent over the new window state which leads to a case that the app gets the event and asks for the window and the window is not there. To address this if we do not have the window, we hold on to the event and fire it as soon as the window arrives. This logic is correct except we were wrongly expecting that the window should have input focus. bug:17464645 Change-Id: I1ef50ebddeb4416a6c0776b096bb16aee703700c
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
7498efdc5e163d6b4a11db941c7d13c169d37284 |
|
04-Sep-2014 |
Svet Ganov <svetoslavganov@google.com> |
Clicking on partially coverd views by other views or windows. In touch exploration mode an accessibility service can move accessibility focus in response to user gestures. In this case when the user double-taps the system is sending down and up events at the center of the acessibility focused view. This works fine until the clicked view's center is covered by another clickable view. In such a scenario the user thinks he is clicking on one view but the click is handled by another. Terrible. This change solves the problem of clicking on the wrong view and also solves the problem of clicking on the wrong window. The key idea is that when the system detects a double tap or a double tap and hold it asks the accessibility focused node (if such) to compute a point at which a click can be performed. In respinse to that the node is asking the source view to compute this. If a view is partially covered by siblings or siblings of predecessors that are clickable, the click point will be properly computed to ensure the click occurs on the desired view. The click point is also bounded in the interactive part of the host window. The current approach has rare edge cases that may produce false positives or false negatives. For example, a portion of the view may be covered by an interactive descendant of a predecessor, which we do not compute (we check only siblings of predecessors). Also a view may be handling raw touch events instead of registering click listeners, which we cannot compute. Despite these limitations this approach will work most of the time and it is a huge improvement over just blindly sending the down and up events in the center of the view. Note that the additional computational complexity is incurred only when the user wants to click on the accessibility focused view which is very a rare event and this is a good tradeoff. bug:15696993 Change-Id: I85927a77d6c24f7550b0d5f9f762722a8230830f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
9bf08c7bc1844ec8130b47d0ec3783f374b21c46 |
|
04-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Clear binder identity when sending window change accessibility events. We get calls for window changes from the window manager and as a result send accessibility events for these changes. It is possible that the call for a windows change from the window manager comes as a result of an unprivileged client calling into the window manager. However, the event sending code is performing security checks. bug:17364244 Change-Id: Ief016f9dafd13ac35418676817848b3ea3ed4d66
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
9ae9ed24aa252acbc2e6288068b991dd5291967b |
|
03-Sep-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix AccessibilityNode's isVisibleToUser behavior. The isVisibleToUser property of an AccessibilityNodeInfo specifies whether the user can see the source view. It is used by accessibility services to figure out whether to focus on a view. This property was giving a wrong value if the view is covered by another window such as the keyboard. As a result the user hears one thing but when double taps interacts with the overlaid window which is another thing. bug:15938254 Change-Id: Ib9feb20ea422a24a512c47ed1234961ae0386a7f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
04cab1bcc46b05cbb72632c53ad83943f705b494 |
|
26-Aug-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix accessiblity CTS tests (framework). 1. An external contribution changed the ordering of views for accessibility. While it attempted to fix a platform issue for a comparator breaking transitivity, it changed the way we order views and results in very unnatural accessibility traversal order. It also broke CTS tets. This change tweaks the comparator which fixes the tests and improves traversal order. 2. If there is at least one accessibility service which cares about windows we register a callback in the window manager for window change notifications. We are updating the window list on this callback. There was a case where if the service requests window updates and immediately asks for the windows it gets none as we have not received a callback from the window manager yet. Now this call returns after we get the callback in a timed fashion. This is consistent with how the other introspection APIs work. 3. Window info objects are cached in the accessibility service process. When putting them in the cache a cloning call was missing resulting in some cases of clobbering windows given to the client. For example, we get some windows, cache them, and return these windows to the client. Now a call to clear the cache arrives while the user processes the windows and the client windows get clobbered. 4. Added API for checking if a window has accessiblity focus to be consistent to the API we have to check whether this window has input focus. 5. Removed some obsolete code. bug:16402352 Change-Id: Ided6da4a82cc0fc703008c58a2dff0119a3ff317
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
a4725efd0bfa52cbddf6ca587d37fc4ebcbfaf72 |
|
24-Jul-2014 |
Svetoslav <svetoslavganov@google.com> |
Improve the window query API performamce. We are caching the window data in the accessibility service process. When windows change we were sending the dalta of the windows the service knows about. To make this work when the app asked for all windows we had to call into the system as new windows may have appeared. This was slow. Now we are telling the service some windows change and if it gets the windows we cache them. We call into the system only on a cache miss and evict all windows from the cache on window change event. We do not evict the nodes of the window as the former may have just moved. If views in a window change they fire accessibility events that trigger the correct eviction. Change-Id: I586a72a2497b0d44a75288fa758e7e88817f3300
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
cce47eb580d666ead1f6095d1e3b65233592bbaa |
|
17-Jul-2014 |
Chris Craik <ccraik@google.com> |
Add accessibility text contrast setting b/14624452 Adds a feature which draws all text (in the HW accelerated standard path) in a high contrast mode. Text is drawn at full alpha, and either white or black (depending on its original color) with a starkly contrasted outline beneath it. Change-Id: I943f624b6367de35367cced3b2a8298f2bc62377
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e34560b21989eea54a139a0586d156ba573cc2ea |
|
10-Jul-2014 |
Alan Viverette <alanv@google.com> |
Add accessibility action to open power long-press dialog Also fixes an infinite recursion bug in the WindowManagerService implementation of WindowManagerInternal. BUG: 16129909 Change-Id: I4f9d32f4e6c3ad460652c5e5271540fa5032a1f5
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
f7174e87b6007000777b0124de9cef70d8618788 |
|
12-Jun-2014 |
Svetoslav <svetoslavganov@google.com> |
Fix backwards compatibility for introspected windows. 1. The APIs for introspecting interactive windows were reporting only the touchable windows but were missing the focused window. The user can interact with the latter by typing, hence it should always be reported. Also this was breaking backwards compatibility as if the focused window is covered by a modal one, the focused window was not reporeted and this was putting the active window in a bad state as the latter is either the focused window or the one the user is touching. 2. Window change events are too frequent as on window transition things are chanign a lot. Now we are trottling the windows changed events at the standard recurring accessibility event interval. 3. Fixed a wrong flag comparison and removed some unneded code. buy:15434666 bug:15432989 Change-Id: I825b33067e8cbf26396a4d38642bde4907b6427a
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
4604abc97d7dd757bb76ff9b7fcf343dc4a15212 |
|
11-Jun-2014 |
Svetoslav <svetoslavganov@google.com> |
Moving and resizing windows not reported propely for accessibility. When the position and size of a window changes we have to report that to the accessibility layer if the window introspection is enabled. bug:15569915 Change-Id: I3f869e0a582592bfa5f3743d5c2133ee8cb39b34
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
5c4cd189f298b3ddb9a5e8afc5f68546a9f96726 |
|
21-May-2014 |
Svetoslav <svetoslavganov@google.com> |
Fixing bugs due to the new custom accessibility action APIs. 1. AccessibiltiyAction was incorectly throwing an exception when a custom action was constructed. 2. AccessibilityManagerService should no longer enforce only standard actions as we allow custom ones too. bug:15110963 Change-Id: Iea57e0a6449b87bd8d103c55ca255e80705f2565
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
e08340645d2539ab13900b5f835b84bcfe8b99e0 |
|
13-May-2014 |
Alan Viverette <alanv@google.com> |
Simplify accessibility display adjustments Makes the inversion bit public so apps can be smarter about rendering images non-inverted (if they are so inclined). BUG: 14680114 Change-Id: I8ca2b2517af2ffc13446d7e0b4e859c1171e2d0e
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
0425d7f56b5c14484777357075b285d59996e6e9 |
|
08-May-2014 |
Svetoslav <svetoslavganov@google.com> |
Teach accessibility manager services about user profiles. For user profiles the accessibility layer will use the accessibility state of the their owner. A profile cannot have its own plugins or settings. The rationale behind this is that if a user with impaired vision is using the device with different profiles linked to his main one, then he/she should be able to interact with the device no matter what profile the app is being run with. Hence, The behavior of the accessibility features should be consistent across apps run with different profile. bug:14564491 Change-Id: Id19ce81e1a2dfa48015c7ab3053d66c058be3e46
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
02b9b981eae877a4624c1820f96298d88a5ced60 |
|
11-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
am 0f7ed1f4: Merge "Adding system support for a single accessibility focus." * commit '0f7ed1f4776844f3ee8d3ce9d903f62cace66a06': Adding system support for a single accessibility focus.
|
1e0d4af9986c8c2a658769a63bf8b385d25e0435 |
|
11-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
Adding system support for a single accessibility focus. Now that we have APIs to query all interactive windows and allow an accessibility service to put accessibility focus in each of them we have to guarantee that there is a single accessibility focus. This is required for correct operation of the touch explorer as on double tap in clicks in the center of the focused area, hence having more that one focus is an issue. Also the system is maintaining a single input focus so now accessibility focus behaves consistently with that. bug:13965563 Change-Id: I0b5c26dadfabbf80dbed8dc4602073aa575ac179
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
dd137a85d3e0295989b5b9d1f67ff32027be867d |
|
10-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
resolved conflicts for merge of 6be2f952 to master-lockscreen-dev Conflicts: core/java/android/view/IWindowManager.aidl tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java Change-Id: Idcbc581294cc52b53eabefd61e5c20cbcea611db
|
6be2f95202237b7284542e692273d13a5bd26913 |
|
10-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Adding render stats APIs to UiAutomation (framework)."
|
6360d29cd78839539aafed961a0b96dc7ba3c317 |
|
10-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
am bc1a8f42: Merge "Active window not correctly computed." * commit 'bc1a8f42d9eb5f1d91c872904a9a283781291fcb': Active window not correctly computed.
|
48eacec53e3f877712c2cf66676f453ddf6b90fb |
|
10-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
Active window not correctly computed. The accessibility manager service was not handling the focused window properly which as a result was breaking the active window tracking. bug:13788022 Change-Id: Iaa3fadfbf7b9545f5151e3603beeda2662fe7618
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
1376d600d8e0eefdbc0aa11d398cf7517fc77129 |
|
13-Mar-2014 |
Svetoslav <svetoslavganov@google.com> |
Adding render stats APIs to UiAutomation (framework). bug:12927198 Change-Id: Iae21481c75ae58dcdab3731bf5f1e2844e29d434
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
380ecb81db52a9d0197ca969951d07b91c20d2b9 |
|
14-Mar-2014 |
Jorim Jaggi <jjaggi@google.com> |
Make Keyguard a library and make StatusBar the new Keyguard. This change achieves a couple of things: - Let Keyguard be a library, so we can use it in SystemUI. - Introduce FLAG_KEYGUARD for windows and deprecate TYPE_KEYGUARD. Make all the TYPE_KEYGUARD behaviour dependant on the flag. - Implement a new KeyguardService in SystemUI, and bind that service from PhoneWindowManager. - Introduce BaseStatusBar.setKeyguardState and inflate KeyguardSimpleHostView there and use FLAG_KEYGUARD for the window, such that the status bar window essentially gets the Keyguard. Bug: 13635952 Change-Id: I059d80d8b9b9818a778ab685f4672ea2694def63
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
cbcc9695f0a701d620f48de75eaee05c4fef6f22 |
|
26-Mar-2014 |
Svetoslav <svetoslavganov@google.com> |
Wrong constant used for undefined accessibility window id. Change-Id: I8b14db034a42a7ffd211a46fa3fee7bf2a6eac8f
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
8e3feb15c5aec2c72b0ef120a1da325e1e8f0dda |
|
24-Feb-2014 |
Svetoslav <svetoslavganov@google.com> |
Added accessibility APIs for introspecting interactive windows. 1. The old introspection model was allowing querying only the active window which is the one the user is touching or the focused one if no window is touched. This was limiting as auto completion drop downs were not inspectable, there was not way to know when the IME toggles, non-focusable windows were not inspectable if the user taps them as until a screen-reader starts introspecting the users finger is up, accessibility focus was limited to only one window and the user couldn't use gestures to visit the whole UI, and other things I can't remember right now. The new APIs allow getting all interactive windows, i.e. ones that a sighted user can interact with. This prevents an accessibility service from interacting with content a sighter user cannot. The list of windows can be obtained from an accessibility service or the host window from an accessibility node info. Introspecting windows obey the same rules for introspecting node, i.e. the service has to declare this capability in its manifest. When some windows change accessibility services receive a new type of event. Initially the types of windows is very limited. We provide the bounds in screen, layer, and some other properties which are enough for a client to determined the spacial and hierarchical relationship of the windows. 2. Update the documentation in AccessibilityService for newer event types. 3. LongArray was not removing elements properly. 4. Composite accessibility node ids were not properly constructed as they are composed of two ints, each taking 32 bits. However, the values for undefined were -1 so composing a 64 long from -1, -1 prevents from getting back these values when unpacking. 5. Some apps were generating inconsistent AccessibilityNodeInfo tree. Added a check that enforces such trees to be well formed on dev builds. 6. Removed an necessary code for piping the touch exploration state to the policy as it should just use the AccessibilityManager from context. 7. When view's visibility changed it was not firing an event to notify clients it disappeared/appeared. Also ViewGroup was sending accessibility events for changes if the view is included for accessibility but this is wrong as there may be a service that want all nodes, hence events from them. The accessibility manager service takes care of delivering events from not important for accessibility nodes only to services that want such. 8. Several places were asking for prefetching of sibling but not predecessor nodes which resulted in prefetching of unconnected subtrees. 9. The local AccessibilityManager implementation was relying on the backing service being ready when it is created but it can be fetched from a context before that. If that happens the local manager was in a broken state forever. Now it is more robust and starts working properly once the backing service is up. Several places were lacking locking. bug:13331285 Change-Id: Ie51166d4875d5f3def8d29d77973da4b9251f5c8
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
4cd353c038ec3c21f25c12897992e5e9826fe824 |
|
13-Feb-2014 |
Guang Zhu <guangzhu@google.com> |
add new accessibility action for EditText to set text content Bug: 12872344 Change-Id: I85a3805ab0c34b96a7d4228f2382c8ff664e36e8
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|
49782e46c0eb85a25ae2abcf80880c48dbab5aea |
|
20-Dec-2013 |
Amith Yamasani <yamasani@google.com> |
am 9158825f: Move some system services to separate directories * commit '9158825f9c41869689d6b1786d7c7aa8bdd524ce': Move some system services to separate directories
|
9158825f9c41869689d6b1786d7c7aa8bdd524ce |
|
22-Nov-2013 |
Amith Yamasani <yamasani@google.com> |
Move some system services to separate directories Refactored the directory structure so that services can be optionally excluded. This is step 1. Will be followed by another change that makes it possible to remove services from the build. Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
/frameworks/base/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java
|