Commit Graph

900 Commits

Author SHA1 Message Date
Karthik Ravi Shankar
2b9aaedf63 Rename CompatibilityDisplay to Vr2dDisplay
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>
2017-05-03 22:16:02 -07:00
TreeHugger Robot
136a48e36a Merge "Removed deprecated setAuthentication() method that didn't take ids." into oc-dev 2017-05-02 00:53:34 +00:00
Felipe Leme
c2430f3c4d Removed deprecated setAuthentication() method that didn't take ids.
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
2017-05-01 11:21:54 -07:00
Jeff Sharkey
000ce80505 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
2017-04-29 13:14:17 -06:00
Jeff Sharkey
1a74942fbf Respond to API council feedback.
Test: builds
Bug: 37752002
Change-Id: I7ae1699c4c5e1a098d16465c41fb41510478b678
2017-04-28 14:24:03 -06:00
Felipe Leme
9f9ee25515 Improved Autofill logging.
- Removed ui.Helper.
- Replaced DEBUG and VERBOSE constants by sDebug and sVerbose.
- Added a shell command to dynamically set the constants.
- Removed obsoleted log statements.
- Changed log-level of some log entries.
- Removed unused methods.

Fixes: 36141126

Test: CtsAutoFillServiceTestCases pass
Test: manual verification

Change-Id: Ic08ee9a2adc10e63f49bbcc7ed126455462dc9c1
2017-04-28 06:56:23 -07:00
Julia Reynolds
b8d4a94867 Merge "Documentation updates" into oc-dev 2017-04-28 13:44:10 +00:00
Felipe Leme
0aa4c5065d Refactored Autofill to move starting flag out of Session.
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
2017-04-27 23:38:14 -07:00
TreeHugger Robot
a851b5ae76 Merge "DO NOT MERGE Revert "Wallpaper color extraction API stub"" into oc-dev 2017-04-27 21:44:56 +00:00
Julia Reynolds
0ffc13b9f2 Documentation updates
Test: make
Change-Id: I9c02b3bd40ff19615747d238b1156d5d21e492e6
Fixes: 37736867
Bug: 37743680
2017-04-27 20:53:34 +00:00
TreeHugger Robot
d915c42150 Merge "Autofill binding permission fixes." into oc-dev 2017-04-27 04:56:44 +00:00
TreeHugger Robot
f84467e19f Merge "Api updates" into oc-dev 2017-04-27 04:51:46 +00:00
Felipe Leme
decd887f01 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
2017-04-26 17:57:53 -07:00
Lucas Dupin
3fd72ff2e7 DO NOT MERGE Revert "Wallpaper color extraction API stub"
This reverts commit c40608c041.

Change-Id: Ia202f4b48b8ba22497db8aa97ba53d412f7b7bd5
2017-04-26 19:28:10 +00:00
Svetoslav Ganov
dc6cccb905 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
2017-04-26 16:48:20 +00:00
Philip P. Moltmann
121e526476 Return all previous FillContexts onFill
Test: CtsAutoFillServiceTestCases
Fixes: 37673341
Change-Id: I80feb5bd8d6027fb4ec2dd32f5c486dae7c6bc4c
2017-04-25 16:48:31 -07:00
Philip P. Moltmann
c761963214 Report multiple FillContext-s onSave
To make life easier the reponseId is not part of the FillResponse.

Test: CtsAutofillServiceTestCases (added test for multiple Contexts)
Change-Id: If09e00b7267d293e4234a7a9837ad88d73af1b24
Fixes: 36481649
2017-04-25 15:22:08 -07:00
Julia Reynolds
bad4297600 Api updates
- Better documentation on DEFAULT_CHANNEL_ID
- Renaming getChannel/setChannel/getTimeout/setTimeout
- Add documentation to getShortcutId
- @hide parcel constructors

Test: make, make cts
Bug: 37672218

Change-Id: I695b2620c51638a84930e9d1c5fbfd6d85699b55
2017-04-25 17:00:05 -04:00
Felipe Leme
6a77849cca Make new onFill/onSave methods abstract.
Test: CtsAutoFillServiceTestCases pass
Test: manual verification

Bug: 37563972

Change-Id: I1447bcc3ac03b3cbf71362f370abedb9f00152b9
2017-04-25 09:27:28 -07:00
TreeHugger Robot
f40d1cb773 Merge "Take new autofill structure for each partition" into oc-dev 2017-04-25 07:31:30 +00:00
TreeHugger Robot
59fe3108fa Merge "Hide deprecated APIs." into oc-dev 2017-04-25 05:09:27 +00:00
Philip P. Moltmann
2f517c26d2 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
2017-04-24 16:50:14 -07:00
Felipe Leme
85d1c2d290 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
2017-04-24 16:01:12 -07:00
TreeHugger Robot
13ba34bf37 Merge changes from topic 'virtual-display-api' into oc-dev
* changes:
  Add command line option to set compatibility display properties
  Make VR mode virtual display properties customizable
2017-04-24 21:33:59 +00:00
Felipe Leme
cb4dd8090b Hide deprecated APIs.
Test: CtsAutoFillServiceTestCases pass
Bug: 37563972

Change-Id: Ia5f33c5624b7a6be3c152e126c99800914d23cbd
2017-04-24 14:04:56 -07:00
Kang Li
0f80719a6f Moved LRResolverRankerService to ExtServices, and added a permission to
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)
2017-04-21 19:56:59 +00:00
Felipe Leme
0d3db06d1d Removed deprecated SaveInfo methods.
Test: CtsAutoFillServiceTestCases pass
Bug: 37563972
Bug: 33197203

Change-Id: Ie90fa78c31f033c47e7b2f018355ae87759c622b
2017-04-21 08:25:44 -07:00
Felipe Leme
01ded104a1 Implemented FillResponse.setIgnoredIds().
Fixes: 37424141

Test: existing CtsAutoFillServiceTestCases pass
Test: PartitionedActivityTest.testIgnoredFieldsDontTriggerAutofill

Change-Id: I09bd95230c45d2970080514e25cb53320de49b56
2017-04-20 17:38:27 -07:00
Felipe Leme
fe1bddfbb5 Merge "Some Autofill API changes." into oc-dev 2017-04-19 05:05:48 +00:00
Felipe Leme
e5f9c30688 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
2017-04-18 19:27:58 -07:00
Philip P. Moltmann
cc684ed41f 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
2017-04-18 16:59:40 -07:00
Philip P. Moltmann
9023d14fb3 Change saveOnAllViewsInsible from boolean to flags
Change-Id: Ibd6f283479bad841eb7b20bb8d006562c4398e9f
Fixes: 35708237
Test: CtsAutoFillServiceTestCases
2017-04-18 10:24:48 -07:00
TreeHugger Robot
1ed2771450 Merge "Add user to channel/group modification callbacks." into oc-dev 2017-04-17 21:26:54 +00:00
Karthik Ravi Shankar
cdf9ce7229 Make VR mode virtual display properties customizable
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>
2017-04-17 14:23:08 -07:00
Julia Reynolds
f27d6b2b82 Add user to channel/group modification callbacks.
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
2017-04-17 08:44:35 -04:00
Philip P. Moltmann
494c3f5da2 Allow to finish session when all views are gone
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
2017-04-16 21:36:25 -07:00
Jorim Jaggi
6acf7a7b45 Merge "Wallpaper color extraction API stub" into oc-dev 2017-04-15 04:52:24 +00:00
Svetoslav Ganov
41200eac71 Merge "Add support for multiple fill contexts" into oc-dev 2017-04-15 03:29:13 +00:00
Lucas Dupin
c40608c041 Wallpaper color extraction API stub
Now it's possible to listen to changes on wallpaper colors by
registering a listener on WallpaperManager. It's also possible
to get the current wallpaper text color hints.

Bug: 36856508
Test: compilation
Change-Id: I5102cb7be9a4af60b85fc8913154a79dfe5c21a0
2017-04-14 18:33:08 -07:00
Svet Ganov
013efe173e 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
2017-04-14 17:37:31 -07:00
TreeHugger Robot
b7f0db8d89 Merge "Update more implementations of findViewById()" into oc-dev 2017-04-14 16:26:27 +00:00
Andrew Scull
e52a1bfede Merge "Service for OEM lock management." into oc-dev 2017-04-14 11:31:06 +00:00
Alan Viverette
04fd470ce0 Update more implementations of findViewById()
Bug: 24137209
Test: make checkbuild -j32
Change-Id: I104969fc74d6dc1d159e3d1ff5926640b124a540
2017-04-13 16:50:32 -04:00
TreeHugger Robot
a402d6dd2f Merge "Add autofill feature API" into oc-dev 2017-04-12 21:17:33 +00:00
Svet Ganov
43574b03e5 Add autofill feature API
We now have a software feature for autofill which can be used
by partners to disable it on low-end devices or form factors
for which autofill doesn't make sense.

bug:35956220

Test: manual (requires a custom build)

Change-Id: I6c06462ed9ca3ae93331700dce38a8c08dfd0722
2017-04-12 09:53:38 -07:00
Julia Reynolds
73ed76bc6f Allow companion device mgrs channel access
- Callbacks when channels and groups are modified
- Allow them to read and update channels and groups

Test: runtest systemui-notification
Change-Id: Ie4d02bd4583f71f9faf27603bcc59a1ec0eeaf46
2017-04-11 19:08:59 +00:00
Svet Ganov
fc4a3004e3 Keep a removed API to not break GCore presubmit
Change-Id: Ica38b7aad2a5a8792917d0da1d497f373b118077
2017-04-11 11:40:14 -07:00
Svet Ganov
f20a037ba2 Move API for disabling an autofill service to the manager
Test: the topic has a CTS test

bug:37170723

Change-Id: I2be18968ea8df0fd3fb070fe2efc3e811b0e5a76
2017-04-10 17:43:44 -07:00
Philip P. Moltmann
eab62baabf 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
2017-04-08 00:48:55 +00:00
Felipe Leme
7d5adb5b86 Autofill Partitioning: support multiple SaveInfos.
Bug: 35707731
Test: CtsAutoFillServiceTestCases (with new tests) pass

Change-Id: I2f234ca13c7e74f84c762473e38f938ed47f216f
2017-04-06 22:19:22 -07:00