History log of /frameworks/base/core/java/android/service/autofill/AutofillService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2ef19c1d73f89ca4718b5a8f0c2e7221621e844f 05-Jun-2017 Felipe Leme <felipeal@google.com> Improved documentation for AutofillService package:

- Moved (and expanded) overall documentation from FillResponse to
AutofillService.
- Improved SaveInfo documentation.
- Improved FillRequest documentation.
- Improved Dataset documentation.

Bug: 37567048
Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Change-Id: I157893deac06a5ed5e1cb7fd082da485f227b9ee
/frameworks/base/core/java/android/service/autofill/AutofillService.java
4f7fd183ebaec60256d38fa4633a09f1a4afc5a5 21-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topics 'bug_62802026_take_2', 'bug_62802026' into oc-dev

* changes:
Don't add FillEventHistory events to the wrong session.
Fixed how FillEventHistory is reset and clarified javadoc.
2e30c6f371be6211f1fa2b2257084df24a535795 20-Jun-2017 Felipe Leme <felipeal@google.com> Fixed how FillEventHistory is reset and clarified javadoc.

Test: existing CtsAutoFillServiceTestCases pass
Test: checkFillSelectionIsResetAfterReturningNull()
Test: checkFillSelectionIsResetAfterReturningError()
Test: checkFillSelectionIsResetAfterTimeout()

Bug: 62802026

Change-Id: I389d95fc13c08f1056960e5f67e131c8dc306401
/frameworks/base/core/java/android/service/autofill/AutofillService.java
bce4b7f1273f1d7108ed6b649320b98b73023b15 20-Jun-2017 Felipe Leme <felipeal@google.com> Removed deprecated, hidden method.

Test: existing CtsAutoFillServiceTestCases pass
Bug: 37563972

Change-Id: I10c5a2b16b422694d72b3ccaf6629d50247c7f49
/frameworks/base/core/java/android/service/autofill/AutofillService.java
266752317b7752394e39618f6fe1ad2829e919d8 19-Jun-2017 Felipe Leme <felipeal@google.com> Fixed updateAutofillValue() when mText is not set.

updateAutofillValue() was crashing some apps when the mText was not set at the
time it was called. One solution would be to not set mText at all - since the
Autofill Service should rely only on getAutofillValue() - but that could break
existing services.

Hence, a safer solution is to set that field if it's null.

Test: existing CtsAutoFillServiceTestCases tests pass
Test: manual verification using Fly Delta app

Fixes: 62751039

Change-Id: I91a8e0ed5db4148f5eb5729b8e254aa3531f15e4
/frameworks/base/core/java/android/service/autofill/AutofillService.java
73fedacfebcccd54f2c36ff7c8eb9929e8ce8455 12-May-2017 Felipe Leme <felipeal@google.com> Removed deprecated APIs.

Test: CtsAutoFillServiceTestCases pass
Test: manual verification with existing service

Bug: 37563972

Change-Id: Ibea2810f9230f06e59d2d81e4ba853de54987956
/frameworks/base/core/java/android/service/autofill/AutofillService.java
ecfa58a1133a3bf2ab7909662771ae7be72ef285 06-May-2017 Svet Ganov <svetoslavganov@google.com> Add call super

Test: manual

bug:37775067

Change-Id: I50a50f1fbdb7e9c087c72ad0be3b767aeab9572a
/frameworks/base/core/java/android/service/autofill/AutofillService.java
000ce805050f0bdbf485464b84eb2c08bca5ad72 29-Apr-2017 Jeff Sharkey <jsharkey@android.com> Updates based on API council guidance.

Test: builds, boots
Change-Id: I223faf55c1e1b4d81d11b4c8b2d93ccd131c969b
Fixes: 37775662
Fixes: 37748635
Fixes: 37673408
Fixes: 37672564
Fixes: 37672218
Fixes: 37638323
Fixes: 37637423
/frameworks/base/core/java/android/service/autofill/AutofillService.java
decd887f012f0c39bba855c8878eb5d8255595c4 27-Apr-2017 Felipe Leme <felipeal@google.com> Autofill binding permission fixes.

- Removed deprecated BIND_AUTO_FILL
- Renamed BIND_AUTOFILL to BIND_AUTOFILL_SERVICE
- Kept BIND_AUTOFILL as @hide
- Fixed the permission code

The permission check was actually ignored; it was probably broken when we
introduced support to settings.

Fixes: 37723410
Bug: 37563972
Test: manual verification with existing client
Test: CtsAutoFillServiceTestCases pass

Change-Id: If3abdcb0ae850f0a327bfdbb9ca6c44a24823047
/frameworks/base/core/java/android/service/autofill/AutofillService.java
dc6cccb905d77b1fd954c883e4369e7b401cb457 25-Apr-2017 Svetoslav Ganov <svetoslavganov@google.com> Get rid of custom negaitve save button label

Removed the ability for an autofill provider to set
a custom string for the negative button. Also make
the old hidden APIs non-abstract to avoid runime
crashes for unimplemented methods.

Test: CtsAutoFillServiceTestCases pass

bug:37649790

Change-Id: If776d26de48382eeb064bdead5d4d5fdb0ff2e7e
/frameworks/base/core/java/android/service/autofill/AutofillService.java
121e526476fb226cabf400c55a0bbfdd0781e772 25-Apr-2017 Philip P. Moltmann <moltmann@google.com> Return all previous FillContexts onFill

Test: CtsAutoFillServiceTestCases
Fixes: 37673341
Change-Id: I80feb5bd8d6027fb4ec2dd32f5c486dae7c6bc4c
/frameworks/base/core/java/android/service/autofill/AutofillService.java
6a77849cca4b4017c337d204c0c8171fc121ca34 25-Apr-2017 Felipe Leme <felipeal@google.com> Make new onFill/onSave methods abstract.

Test: CtsAutoFillServiceTestCases pass
Test: manual verification

Bug: 37563972

Change-Id: I1447bcc3ac03b3cbf71362f370abedb9f00152b9
/frameworks/base/core/java/android/service/autofill/AutofillService.java
f40d1cb773064bf8cac7e5760163897e9b1ece40 25-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Take new autofill structure for each partition" into oc-dev
59fe3108fa958b7a84cea6ddf863e7a4b683716c 25-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Hide deprecated APIs." into oc-dev
2f517c26d23393d4f0d6b3352de6e4c92c9e107e 22-Apr-2017 Philip P. Moltmann <moltmann@google.com> Take new autofill structure for each partition

Bug: 36481649
Test: CtsAutofillServiceTestCases (now with a test that has an autofill
session over two full screen fragments)
Change-Id: I55f2f6203f3bd5a7082b4ce90500d2c16a260c7d
/frameworks/base/core/java/android/service/autofill/AutofillService.java
85d1c2d2905362b984563d9b5e8332010c272fc5 21-Apr-2017 Felipe Leme <felipeal@google.com> Minor fixes on Autofill Framework:

- Removed default implementation of onProvideAutofillVirtualStructure() that
was using accessibility API (it's useless because without the View calling
AutofillManager.notifyViewEntered(), it would never be triggered).
- Fixed obsolete TODOs.
- Removed obsolete service class name constant.
- Removed unused debug constant.

Fixes: 37078783
Fixes: 33197203
Bug: 33802548
Bug: 35956626

Test: CtsAutoFillServiceTestCases pass
Merged-In: I834d34b8af8bf0d781dc7e0ffcd6e600bfa2d183
Change-Id: I834d34b8af8bf0d781dc7e0ffcd6e600bfa2d183
/frameworks/base/core/java/android/service/autofill/AutofillService.java
cb4dd8090b0e68aa185ba1a8a13686c38311d0db 22-Apr-2017 Felipe Leme <felipeal@google.com> Hide deprecated APIs.

Test: CtsAutoFillServiceTestCases pass
Bug: 37563972

Change-Id: Ia5f33c5624b7a6be3c152e126c99800914d23cbd
/frameworks/base/core/java/android/service/autofill/AutofillService.java
fe1bddfbb54c20156b45e99c9d18166d702c9adb 19-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Some Autofill API changes." into oc-dev
e5f9c30688f0277505fb6b50ea385e5df6271ed8 19-Apr-2017 Felipe Leme <felipeal@google.com> Some Autofill API changes.

- Added View.IMPORTANT_FOR_AUTOFILL_YES_INCLUDE_DESCENDANTS
- Added View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS
- Added FillResponse.Builder.setIgnoredIds()
- Fixed javadoc links.

These changes are not implemented yet....

Bug: 37424141
Bug: 36171235
Test: m update-api

Change-Id: I604960443ab08cd3f2a84a70b0a2cece7cb0a00c
/frameworks/base/core/java/android/service/autofill/AutofillService.java
cc684ed41f17ccdce45a056fd4034efc35b213d5 17-Apr-2017 Philip P. Moltmann <moltmann@google.com> Add a way to read the last AutofillSelection.

- Check UID to make sure one service cannot read FillSelections of other
services
- Add id to Dataset to allow to tag the datasets. This id is then found
in the FillSelection.Event
- Add clientState to FillSelection to allow service to store more data

Fixes: 36871500
Test: CtsAutoFillServiceTestCases
Change-Id: Ice894245508227265294a1c59ea97842175e5aec
/frameworks/base/core/java/android/service/autofill/AutofillService.java
013efe173e56612a910ebd8576480ce4ef005e3c 14-Apr-2017 Svet Ganov <svetoslavganov@google.com> Add support for multiple fill contexts

When saving data filled by the user the platform provides to
an autofill provider the state of the UI allowing the provider
to interpret this state and store relevant information.

A limitation of the current design is that the fill provider
needs to interpret the screen content twice, once handling a
fill request and once handling a save request. To address this
we are introducing a id for each fill request allowing the
autofill provider to associate arbitrary state with each fill
request and store it in the client data bundle later passed
to save.

Another limitation of the current design is that if the screen
changes dynamically while the user interacts with the app the
UI state passed on save represents a static snapshot, therefore
it is not possible to the autofill provider to determine the
context in which the data in the UI was filled. We could
keep the views and have deltas for views being removed/added
/moved/changed but this is not enough as the fill provider
needs to know not only what changed but what changed for every
fill request and in one session there could be multiple fill
requests. To address this we provide a list of fill contexts
on save each of which has the id of the corresponding fill
request. This allows the fill provider to know the exact context
in which the data was popuplated and also use its custom client
state for this fill request if desired.

This change deprecates the old APIs and the new ones delegate
to the old ones. Once the clients migrate to the new APIs we
will remove the old ones.

Test: all autofill CTS tests pass

Change-Id: Idcebcc671aa3c078a305d8c358e225274fccc588
/frameworks/base/core/java/android/service/autofill/AutofillService.java
fc4a3004e37b25065412fa65cbe060c08bf0398a 11-Apr-2017 Svet Ganov <svetoslavganov@google.com> Keep a removed API to not break GCore presubmit

Change-Id: Ica38b7aad2a5a8792917d0da1d497f373b118077
/frameworks/base/core/java/android/service/autofill/AutofillService.java
f20a037ba2a6990bb51ad40ee18c7af18464f620 11-Apr-2017 Svet Ganov <svetoslavganov@google.com> Move API for disabling an autofill service to the manager

Test: the topic has a CTS test

bug:37170723

Change-Id: I2be18968ea8df0fd3fb070fe2efc3e811b0e5a76
/frameworks/base/core/java/android/service/autofill/AutofillService.java
eab62baabf290ea6671577a66cfc9fdd1b145d0e 20-Mar-2017 Philip P. Moltmann <moltmann@google.com> Restore session on new window after app kill

Also:
- Give the session an integer ID as the activityToken is not stable over
restarts of the activity
- Verify that session is only accessed by one UID
- stabilize AccessibilityViewIds over activity lifecycle at least for
the IDs we can do that. This required to split the ID namespace in
"per-app" and "per-activity" views. Only the later ones can be
restored.
- Do not end session when app is killed (as it can be restarted)

Bug: 35484143
Fixes: 36392498
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases --test=android.autofillservice.cts.SessionLifecycleTest
cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
Change-Id: I229acc1b3ce35fb57262da7d7466b5d4328b49d4
/frameworks/base/core/java/android/service/autofill/AutofillService.java
7a7c0ace8277d06513ab9eaa19159d66919764ba 07-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed deprecated onFillRequest() method" into oc-dev
52d5d3dfc7d4d4b6dfed1686cc904c08d7433a04 04-Apr-2017 Felipe Leme <felipeal@google.com> Pass FillResponse bundle on subsequent onFillRequest() calls.

BUG: 35707731

Test: existing CtsAutoFillServiceTestCases pass
Test: more tests on PartitionedActivityTest

Change-Id: I510aff54d0d9d7e0cce90f9786e3e1f6cab180f9
/frameworks/base/core/java/android/service/autofill/AutofillService.java
a86aee6ef3274d15c061a2df344408cd8cf2831d 05-Apr-2017 Felipe Leme <felipeal@google.com> Removed deprecated onFillRequest() method

Bug: 35708229
Test: manual verification
Test: CtsAutoFillServiceTestCases pass

Change-Id: Ie6d146386752273b6a35d16102ccedaf6a161676
/frameworks/base/core/java/android/service/autofill/AutofillService.java
f78e952d8df7074aa7380c5998826a4dffe335e7 05-Apr-2017 Felipe Leme <felipeal@google.com> Removed deprecated auto(F)ill classes.

Bug: 35956626
Test: manual verification
Test: CtsAutoFillServiceTestCases pass
Change-Id: Icb622589c41e6a286d51e3f85bd5a813e483b5ea
/frameworks/base/core/java/android/service/autofill/AutofillService.java
24d5893b25ce62b7bc9ed9f35fa72b9d47f23cdd 21-Mar-2017 Felipe Leme <felipeal@google.com> Added a UserManager.DISALLOW_AUTOFILL restriction.

bug: 35710740

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testUserRestriction
Test: cts-tradefed run commandAndExit cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDisallowAutofill_allowed
Test: cts-tradefed run commandAndExit cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedProfileOwnerTest#testDisallowAutofill_allowed
Test: cts-tradefed run commandAndExit cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testDisallowAutofill_allowed

Change-Id: I41b2bf9fe3bc8df627c6650960bd11346c430a7e
/frameworks/base/core/java/android/service/autofill/AutofillService.java
2ac463e3f5c3b757ecbc7e30e0fc1e8e0d878272 13-Mar-2017 Felipe Leme <felipeal@google.com> Allow users to manually request Autofill.

- Added a requestAutofill(view,flags) method, that when passed with
FLAG_MANUAL_AUTOFILL triggers a manual request.
- Added same method for virtual views
- Overloaded existing AutofillService request methods to take a flag.
- Added an AUTOFILL context menu option on TextViews.
- Added a canRequestAutofill() that is used to enable the context menu.

BUG: 35708229
Test: manual verification
Test: existing CtsAutoFillServiceTestCases pass
Test: android.autofillservice.cts.LoginActivityTest#testManualAutofill pass

Change-Id: I1a64d40da3373774451d178b1cabf20f11120e9d
/frameworks/base/core/java/android/service/autofill/AutofillService.java
640f30a7763b0a4b80c767acb84c740aac04768b 07-Mar-2017 Felipe Leme <felipeal@google.com> Replaced auto-fill by autofill to keep it consistent with API style.

This change will affects 2 types of apps: autofill service implementations
and apps that use autofill APIs.

Since just the former is known to be used at the moment, we're not trying
to keep backward compatibility with the latter.

Bug: 35956626
Test: CtsAutoFillServiceTestCases pass
Test: android.provider.SettingsBackupTest pass

Change-Id: Ia720083508716deae9e887f9faa7ae7c5a82f471
/frameworks/base/core/java/android/service/autofill/AutofillService.java