We now
- cache AutofillId -> ViewNode
- look for all AutofillIds at the same time (instead of one by one)
Bug: 37997043
Test: CtsAutoFillServiceTestCases
Change-Id: I094468ad885eed0cc506b4b62ff09c4af48570ff
If a dataset needs to be authenticated the fill service
may not have the values but needs to tell the system for
which fields to show the fill UI. We now allow passing
a null value to mean the view is a part of the dataset
semantically but its value should remain unchanged.
If a dataset has no values, i.e. the related autofill ids
are mapped to null, we cannot properly filter. In this case
we always match such items regardless what the user typed.
While at this improved accessibility support for filtering
to announce when the number of items being filtered changes.
Also while at this allowed a dataset authentication to return
a response which replaces the current response and refreshes
the UI. Matching datasets with null values to any text plus
allowing a response to be returned from a dataset auth enables
the use case where there is always "Import" item at the
end of the list which when clicked can show arbitrarily more
data entries associated to other apps.
Another change is that we now provide the client state
bundle on both request and dataset auth.
Finally, this change gets rid of dataset waiting auth and
response waiting auth concepts since the reference to the
response and the dataset is piped with the auth request.
Fixed a bug where the width of the autofill UI was not
properly measured by going over all items in the adapter.
Now we measure enough height to fit the first three and the
width id the width of the widest item in the adapter.
Test: Added LoginActivityTest#testDatasetAuthTwoFieldsReplaceResponse
Added LoginActivityTest#testDatasetAuthTwoFieldsNoValues
Added LiginActivityTest#filterTextNullValuesAlwaysMatched
All autofill CTS tests pass
bug:37724701
bug:37424539
Change-Id: Ic19e5d7cbdbb7d110c9e7da0ad60b540cbf1aecf
These broken docs were causing the docs build to completely fail.
Test: make -j32 online-system-api-sdk-docs
Bug: 38164929
Change-Id: I7f5fd4922e20e1a42af953f86f3c652655bc9192
Also use getUiForShowing() on all relevant places, and added missing
SaveDataType value.
Test: LoginActivityTest.testFillResponseAuthServiceHasNoData()
Test: manual verification
Fixes: 37711385
Fixes: 38009452
Change-Id: Id69c831f96fb9ac35d1f2d86cfd41e76428c776e
Bug: 38004624
Test: Launch 2D in 3D application, check that null is delivered
VrListenerService#onCurrentVrActivityChanged.
Change-Id: I8ecb3d2fd4fa686ec43509852f4bc5f7d11d665c
No longer need the proxy since VR Window Manager is in VrCore.
Bug: 36506799, 37542947
Test: Compiled and ran in VR on device.
Change-Id: Id5b5f34a1ad2b6da263527463d63777d40f18085
CompatibilityDisplay used for displaying 2D activities in Vr world. This
is confusing in more than one way. To clarify what it really means,
rename it to Vr2dDisplay.
Changes in this CL -
- /s/CompatibilityDisplay/Vr2dDisplay
- /s/Compatibility/Vr2d - in CompatibilityDisplay context.
Bug: 37851944
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test
CtsServicesHostTestCases android.server.cts.ActivityManagerDisplayTests
passes on Marlin.
Change-Id: I0a442302fa9d0f48bbd0c01a7766b94369e04386
Signed-off-by: Karthik Ravi Shankar <karthikrs@google.com>
Such method would cause the AutofillUi to show on all fields, now it only
shows in the fields the service is interested on.
This doesn't solve FillResponse auth on multiple partition, but that will
come soon...
Bug: 37424539
Test: removed hack from testFillResponseAuthJustOneField()
Test: CtsAutoFillServiceTestCases pass
Change-Id: Id97dddfb9fc1630cd6bac96b9bae9d4a2986dd6d
Otherwise, all onFillRequest() calls in the same partition would use
the same flags.
Fixes: 37675138
Test: existing CtsAutoFillServiceTestCases pass
Test: CtsAssistTestCases pass
Test: PartitionedActivityTest.testAutofill4ParitionsMixManualAndAuto() pass
Change-Id: I03c8a036637bae534904d4f41265e451088cf940
- 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
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
To make life easier the reponseId is not part of the FillResponse.
Test: CtsAutofillServiceTestCases (added test for multiple Contexts)
Change-Id: If09e00b7267d293e4234a7a9837ad88d73af1b24
Fixes: 36481649
Bug: 36481649
Test: CtsAutofillServiceTestCases (now with a test that has an autofill
session over two full screen fragments)
Change-Id: I55f2f6203f3bd5a7082b4ce90500d2c16a260c7d
- 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
ensure that ResolverRankerServices are from trust sources.
Test: manually shared images in Camera, and in PTP to confirm it works
as expected.
Change-Id: I3549292d424fec949e9115faea7a0c5bdec06e87
(cherry picked from commit 61cf4d145e)
- 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
Currently the virtual display created in VR mode is of fixed size. This
may not work for all the devices. Add APIs to make the resolution and
DPI adjustable from VrCore.
Bug: 37260266
Test: Sample reflection which works - cl/153039188
Test: adb shell set-persistent-vr-mode-enabled true
adb shell vr set-compatibility-display-properties 500 500 500
adb shell dumpsys display
>> DisplayDeviceInfo{"VR 2D Display":
uniqueId="virtual:android,1000,VR 2D Display,0", 500 x 500, modeId
6, defaultModeId 6, supportedModes [{id=6, width=500, height=500,
fps=60.0}], colorMode 0, supportedColorModes [0], HdrCapabilities
null, density 500, 500.0 x 500.0 dpi, appVsyncOff 0, presDeadline
16666666, touch NONE, rotation 0, type VIRTUAL, state ON, owner
android (uid 1000), FLAG_PRIVATE, FLAG_NEVER_BLANK,
FLAG_OWN_CONTENT_ONLY}
Change-Id: Ibb2d03b7f7f8f62fcce97fcc2b373ae3f09cef01
Signed-off-by: Karthik Ravi Shankar <karthikrs@google.com>
Because listeners can see notifications on managed profiles.
Test: runtest systemui-notification and testing with a sample app
(reading and updating channels and getting change
callbacks on a managed profile)
Change-Id: I5d7af3c417e3a3d18f992cc9ad01fbd7959de398
Fixes: 36783632
An service can option to finish the session once all views that it
declared as important. Views that are important are all autofillable
views of any partition and the saveable fields of the last partition.
Test: CtsAutoFillServiceTestCases
Fixes: 35708237
Change-Id: I0ccade8ebb427e5d8928697ef0007c75d3f83df0