summaryrefslogtreecommitdiffstats
path: root/tests/VoiceInteraction/res
Commit message (Collapse)AuthorAgeFilesLines
* Fix issue #22860466: viapi security bug - rubber stamping in nested VIsDianne Hackborn2015-08-032-0/+14
| | | | | | | | | | | | | | | | | Add new Activity.isVoiceInteractionRoot() API that an activity can use to determine whether it is the root activity of a voice interaction session started by the user's designated voice interaction service. This is a special new API that apps must explicitly check, because as with visual activities the model behind an activity should usually be that it accomplishes its task by interacting with the user (implicitly getting their approval) rather than trusting that whoever invoked it is telling it to do what the user once. In the voice world, however, there are some cases where quick interactions want to allow for immediate execution without further user involvement, so this API allows for that without opening up security holes from other applications. Change-Id: Ie02d2458f16cb0b12af825641bcf8beaf086931b
* Fix issue #21895842: Add is_assist_blocked to assist.ViewNode.NodePropertiesDianne Hackborn2015-07-312-0/+7
| | | | Change-Id: I928882d42d0546cc6a12e803d96131beaba76d4e
* Fix issue #22531747: Assist info should declare if user has disabled...Dianne Hackborn2015-07-201-0/+6
| | | | | | | | | | | | | | | ...context and/or screenshot Added new API to find out what contextual data has been globally disabled. Also updated various documentation to make it clear what kind of contextual data you will get (and when it will be null). Also added a new Activity.showAssist() API because... well, I was already in there, it was easy to do, it is safe, and maybe people will build cool things with it. Change-Id: Ia553d6bcdd098dc0fce4b9237fbfaca9652fc74b
* Implement issue #22403908: Enable assistant to refuse context sharingDianne Hackborn2015-07-151-24/+47
| | | | | | | New APIs allow the voice interaction service to set/retrieve a filter for which of the show flags are allowed. Change-Id: I588cbe55afee0548ad3afa22d3a7d3bc43cb54a6
* Implement better handling of text in assist.Dianne Hackborn2015-07-072-1/+237
| | | | | | | | | | | TextView is now much smarter about the text it reports, limiting it to what is visible (plus a bit more). Also add a facility for it to report where the lines of text are, both as offsets in the text string and their baselines on screen. Part of fixing issue #22328792: Fix scalability issues in AssistStructure Change-Id: Idddb8c3a3331355f381e2d4af06d520fe7c7ce8e
* Fix issue #22124996: VI: Command Request not ActiveDianne Hackborn2015-06-302-0/+14
| | | | | | | | | | | Just forgot to add the request to the active set. Also eradicate a bunch of old cruft that has been replaced by the final APIs, and improve voice interaction test to sit fully on top of the final APIs and have a test for command request. Change-Id: Ieff7a6165ebf2a4c5fb80c1ebd020511a2ae63ee
* Fix issue #22013372: Assist should take translationX and friends...Dianne Hackborn2015-06-252-15/+28
| | | | | | | | | | | | | | | | | | ...into account when calculating the position information Actually what we need here is the full transformation matrix, if it is available. And that means actually computing the location of views on the screen requires doing this all through transformations, so the AssistVisualizer has been changed to do this (while still also keeping the old mechanism for comparison to verify that things are working correctly). Also added new properties for elevation and alpha. And optimized the parcelling of AssistStructure to not write things that aren't needed; this reduces the parcelled size by about half. Change-Id: I50b0dd2e6599c74701a5d188617a3eff64b07d03
* Fix issue #20655182: API Review: ViewAssistStructureDianne Hackborn2015-05-071-6/+0
| | | | | | | | | | | Fix the various view assist related APIs. Also remove the blockAssist view attribute, and instead use the window's FLAG_SECURE to drive blocking of the entire hierarchy (which is semantically correct, and will protect existing apps that have already indicated they need it). Change-Id: I6beebc86b202809cba0a356cae9607d8d0fb5e78
* Rename supportsAssistGesture to supportsAssistJorim Jaggi2015-05-011-1/+1
| | | | | Bug: 20642759 Change-Id: Idddc786980244cc94570d04fd414540bbad60448
* Add "assist block" API.Dianne Hackborn2015-04-222-1/+8
| | | | | | To prevent assist structure traversal down the view hierarchy. Change-Id: I50ce5f8de6f2eca3cb862de8eacd6422c40a2f7c
* Various fixes and improvements...Dianne Hackborn2015-04-042-18/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #19912529: VI: VoiceInteractor callback ClassCastException Fix to use correct argument. Issue #19912636: VI: Documentation for VoiceInteractionSession.onBackPressed Added documentation. Issue #19912703: VI: VoiceInteractionSession NPE on Abort Request Maybe fix this -- don't crash if there is no active session. Issue #19953731: VI: Add value index to... ...android.app.VoiceInteractor.PickOptionRequest.Option There is now an optional index integer that can be associated with every Option object. Issue #19912635: VI: Behavior of startActivity when in voice... ...interaction is unexpected We now forcibly finish the current voice interaction task whenever another activity takes focus from it. Issue #20066569: Add API to request heap dumps New ActivityManager API to set the pss limit to generate heap dumps. Also added app ops for assist receiving structure and screenshot data, so that we can track when it does these things. Change-Id: I688d4ff8f0bd0b8b9e3390a32375b4bb7875c1a1
* Add quick and dirty async AssistStructure building.Dianne Hackborn2015-04-022-0/+9
| | | | | | | | | | | | | | New APIs on ViewAssistStructure all the app to request to build a sub-tree asynchronously and indicate when it is done with that. The overall AssistStructure is now only flattened and transfered on-demand, when the app receiving it requests its data -- and at that point we can wait for any asynchronous building to complete. New AsyncStructure view is a very simple example of using this to asynchronously build a child view. Change-Id: I14f9199bee64915ad3dc80b2190916ec874308af
* Add ability to get a screenshot for assist.Dianne Hackborn2015-03-171-4/+5
| | | | | | | New flag you pass in to startSession() to say you want it, new callback on VoiceInteractionSession to receive it. Change-Id: I61fdcfdee41a60d46036a2ef16681a9b4181115a
* Add new voice request for picking from a list.Dianne Hackborn2015-03-162-1/+8
| | | | | | | | | | | | Also add API for voice interaction service to control whether the system should hold a wake lock while it is working with an activity (and actually *do* hold a wake lock while doing so, duh!). And while in there, clean up the launching wake lock to correctly give blame to the app that is launching. Change-Id: I7cc4d566b80f59fe0a9ac51ae9bbb7188a01f433
* Rework voice interaction session lifecycle.Dianne Hackborn2015-02-252-0/+8
| | | | | | | | | | | | | | | | | | | | We now have a formal concept of the session being shown and hidden, with it being able to continue running while hidden as long as there is enough RAM. This changes the flow that a VoiceInteractionSession will see: onCreate() is when it is first created, onCreateContentView() is when its UI first needs to be built, onShow() is called each time it needs to be shown and has the arguments given when the show request was made (which has been renamed from startSession to showSession), and then onHide() will be called when the UI is no longer shown. The methods show() and hide() now allow a VoiceInteractionSession subclass to control when it is shown and hidden, working with the shown state being maintained by the system. Change-Id: Ic4a430ec7e8bf76a5441fd0425e2932806170fcc
* Update voice interaction layer for new UI design.Dianne Hackborn2015-02-132-15/+31
| | | | | | | | | | | | | | | | | | Can switch from a pure overlay at the top of the screen, to interactive mode with the voice UI drawing at the bottom and pushing its target activity up like an IME. Add mechanism to get assist data to the voice interaction UI. Add some basic visualization of the assist data, outlining where on the screen we have text. Add a test ACTION_ASSIST handler, which can propagate the assist data it gets to the voice interaction session so you can see what kind of data we are getting from different apps. Change-Id: I18312fe1601d7926d1fb96a817638d60f6263771
* Make Test Voice Interactor support new requirements.Barnaby James2014-08-093-1/+44
| | | | | | Add settings activity and stub RecognizerService to voice interactor test. Change-Id: I3c3dda7d2c30eac5e0b889c0c7305dc8f4dfbcb9
* Add VoiceInteraction request type for successful actions.Barnaby James2014-07-113-0/+14
| | | | | | Add CompleteVoiceRequest to VoiceInteractor to allow apps to indicate when a voice interaction was successfully completed. Change-Id: I1481cfe96e9e2495d88a7a4fb62263bdd1e03c54
* Clean up voice API.Dianne Hackborn2014-05-303-24/+58
| | | | | | | | | | | | Add various java docs. Switch to CharSequence where appropriate. Add new request for canceling voice interaction. Also update test app to follow API changes and be more better. Change-Id: If27eeba53cf6444660adb7d37ea2ce0557c6c91f
* Add system layer for voice interaction services.Dianne Hackborn2014-05-281-0/+1
| | | | | | | | | | | | | | | | | New window layer that voice interaction service windows go in to. Includes a new voice-specific content rectangle that voice activities are placed in to. Add specific animations for this layer, sliding down from the top (though this can be customized by the voice interaction service). Also add the concept of activities running for voice interaction services for purposes of adjusting the animation used for them, again sliding from the top, but not (yet?) customizable by the voice interaction service. Change-Id: Ic9e0e8c843c2e2972d6abb4087dce0019326155d
* Further work on voice interaction services.Dianne Hackborn2014-05-051-0/+38
| | | | | | | | | | | | | This makes VoiceInteractionSession a more first-class concept. Now the flow is that a VoiceInteractionService calls startSession() when it wants to begin a session. This will result in a new VoiceInteractionSession via the VoiceInteractionSessionService containing it, and the session at that point an decide what to do. It can now show UI, and it is what has access to the startVoiceActivity API. Change-Id: Ie2b85b3020ef1206d3f44b335b128d064e8f9935
* Rework some of the voice interaction APIs.Dianne Hackborn2014-04-281-0/+21
| | | | | | | | | | | | | | On the app side, requests are now composed by subclassing from various types of Request objects. On the service side, starting a voice interaction session involves starting another service that will then manage the session. This leads the service design much more to what we want, where the long-running main service is very tiny and all the heavy-weight transient session work is elsewhere in another process. Change-Id: I46c074c6fe27b6c1cf2583c6d216aed1de2f1143
* Initial implementation of new voice interaction API.Dianne Hackborn2014-04-243-0/+90
This gives a basic working implementation of a persist running service that can start a voice interaction when it wants, with the target activity(s) able to go through the protocol to interact with it. It may even work when the screen is off by putting the activity manager in the correct state to act like the screen is on. Includes a sample app that is a voice interation service and also has an activity it can launch. Now that I have this initial implementation, I think I want to rework some aspects of the API. Change-Id: I7646d0af8fb4ac768c63a18fe3de43f8091f60e9