Commit Graph

3409 Commits

Author SHA1 Message Date
Sharon Su
affee4a5e1 Merge "Update WallpaperEffectsGeneration api, including annotations on data classes and allow the same uid process to call returnCinematicResponse API." into tm-dev 2022-03-25 17:05:09 +00:00
TreeHugger Robot
bb497479ab Merge "Update the GrantTrustResult to remove static factory method." into tm-dev 2022-03-25 03:52:11 +00:00
TreeHugger Robot
ba57fccde4 Merge "Client feedback: Fix javadoc mistake" into tm-dev 2022-03-25 02:43:08 +00:00
Mark Renouf
fe4b81853e Merge "Remove permission token from startActivityAsCaller" into tm-dev 2022-03-25 02:32:08 +00:00
Sharon Su
bb146eff49 Update WallpaperEffectsGeneration api, including annotations on data classes and allow the same uid process to call returnCinematicResponse API.
Test: Manual test on device
Bug: 218570612
Change-Id: Ie12b570f1e6400ab9e289b882e5821921a609e0a
(cherry picked from commit 1611a8d1c5)
Merged-In: Ie12b570f1e6400ab9e289b882e5821921a609e0a
2022-03-24 23:08:08 +00:00
Dave McCloskey
c26e2e11a5 Update the GrantTrustResult to remove static factory method.
Bug: 226358933
Bug: 225231929
Test: atest TrustTests
CTS-Coverage-Bug: 213944235
Change-Id: I3d38a7df0bff3ef762579fa12bdfc68b6109f0fd
2022-03-24 11:04:02 -07:00
Tiger Huang
0797d97536 Merge "Introduce updateVisibility and updateLayout" into tm-dev 2022-03-23 17:44:42 +00:00
Lucas Dupin
f4dbcd621f Merge "Asynchronously bind/unbind service" into tm-dev 2022-03-23 17:11:24 +00:00
Mark Renouf
05a2ef2647 Remove permission token from startActivityAsCaller
The call is protected by the signature permission
START_ACTIVITY_AS_CALLER. This will remove the need for additional data
to be passed from system server.

Bug: 222082547
Bug: 226354782
Test: atest ActivityTaskManagerServiceTests, atest ChooserActivityTest,
      manual testing
Change-Id: I94f34a68e390569ec14dfebb1902a7c30558864f
2022-03-23 14:55:01 +00:00
TreeHugger Robot
49d28c5a9c Merge "[DO NOT MERGE] Remove the Client Suggestions APIs" into tm-dev 2022-03-23 07:25:35 +00:00
TYM Tsai
613a8733c6 Client feedback: Fix javadoc mistake
Bug: 226053830
Test: make sdk
Change-Id: I97665d80f49a5d7adce9905623f659400f735f88
2022-03-23 01:06:45 +08:00
Tiger Huang
db407ef12d Introduce updateVisibility and updateLayout
This is a step to let the client layout its window locally. The ultimate
goal is to reduce the jank while laying out the window.

With the new AIDL methods, we can divide IWindowSession.relayout into:

- IWindowSession#updateVisibility (synchronized binder call)
  - To get or update the surface
  - To fetch the latest factors about window-layout
  - Only called when the view visibility is changed

- WindowLayout#computeFrames (local function call)
  - To compute the window frames

- IWindowSession#updateLayout (one way binder call)
  - To report the result of layout to the server

In this way, if the view visibility is not changed, the UI thread of
the client won't be blocked by the binder call during relayout.

The local layout project won't be done in a single CL. In order not to
break the existing logic, this CL introduces a flag: LOCAL_LAYOUT. The
flag will be enabled when the logic of local layout is ready.

Bug: 161810301
Bug: 175861051
Test: presubmit (no behavior change)
Change-Id: Ic4b2fc78a318f3a68e1ef8a35d8f3ab705856702
2022-03-22 23:42:47 +08:00
Lucas Dupin
1ad640ba13 Asynchronously bind/unbind service
Context#bindService can take unreasonably long to execute, causing API
clients to miss frames.

Test: atest TestQuickAccessWalletService
Test: atest QuickAccessWalletControllerTest
Fixes: 218323803
Change-Id: If0278a531b4eb07aad713986315118ac91337b0b
2022-03-21 18:20:16 -07:00
TYM Tsai
0871d02822 [DO NOT MERGE] Remove the Client Suggestions APIs
Bug: 224871426
Test: atest CtsAutoFillServiceTestCases
Change-Id: I178e0443278383120d9e6e3321ec96be8e5705c1
2022-03-22 00:21:12 +00:00
Dave McCloskey
c5a7ed29de Merge "Changes to support reducing noise in active unlock notifications." into tm-dev 2022-03-21 19:15:01 +00:00
Dave McCloskey
6c707a47da Changes to support reducing noise in active unlock notifications.
1. Add additional trigger onUserMayRequestUnlock
  - point existing trigger points from SystemUI to this
2. Argument added to onUserRequestedUnlock to indicate if user wants to
   dismiss keyguard.
3. Callback for result of grantTrust calls.
  - curently only calls back if device was unlocked as a result of the
    call

See design: go/au-noise-reduction

Note: changes made to SystemUI are manually tested and may need
refactoring which is being skipped now to meet the API Freeze deadline.

Bug: 225231929
Test: atest TrustTests
Test: Manual interaction with wake & fingerprint sensor
CTS-Coverage-Bug: 213944235
Change-Id: I8d08229f09c9a1f2295b7eb464d12cad0c6b8303
2022-03-21 09:00:43 -07:00
Ayush Sharma
f811f765de Merge "Fix security hole in GateKeeperResponse" into tm-dev 2022-03-21 09:13:24 +00:00
Tiger Huang
883190cdb3 Merge "Push drag-resize mode to the client" into tm-dev 2022-03-21 05:51:13 +00:00
Tiger Huang
3e194cc9fa Push drag-resize mode to the client
The goal of this CL is to remove RELAYOUT_RES_DRAG_RESIZING_DOCKED and
RELAYOUT_RES_DRAG_RESIZING_FREEFORM, which is a step to make relayout an
oneway binder call.

When the resize mode is changed at the server side, the server will send
the new mode to the client via IWindow#resized, so the client doesn't
need to obtain the resize mode from the flags returned from relayout.

Bug: 161810301
Test: Perform drag-resize and drag-move on a freeform task and see if
      there is any unexpected behavior.
Change-Id: I450abc113932b6c1dc0ce0e2b76bebdf85a60777
2022-03-20 14:36:19 +08:00
Joanne Chung
f9fafbe617 Provide AutofillService to know how the dataset was shown to user
We introduce a filed for ui presentation in FillEventHistory.Event,
the type will be set for TYPE_DATASET_SHOWN and TYPE_DATASET_SELECTED.
The AutofillService can know which dataset is shown to user and which
type dataset user is clicked.

This change defines the definition and apply to TYPE_DATASET_SHOWN,
the TYPE_DATASET_SELECTED will be implemented on the follow up
change.

Bug: 223472350
Test: manual. build and boot pass. Test app and see dumpsys autofill
CTS-Coverage-Bug: 225310516

Change-Id: Ic221bd79e2ad512db5cd1ef8fd96c6bfae2ca616
2022-03-19 07:22:05 +00:00
Ahaan Ugale
ff1e4a4680 Merge "Allow AutofillService can identify if fill dialog presentation is needed." into tm-dev 2022-03-19 06:11:51 +00:00
Peiyong Lin
4bd3214296 Merge "Add permission for takeScreenshot API." into tm-dev 2022-03-19 01:53:16 +00:00
Joanne Chung
23668c560e Allow AutofillService can identify if fill dialog presentation is needed.
If the fill dialog is available for the field, the FillRequest flags
will contain FLAG_ACIVITY_START. The field is hidden originally but
it needs to be get from AutofillService to avoid creating unnessary
fill dialog presentation. Rename the flag because the it's not clear
to combine the relationship with fill dialog.

Bug: 223472039
Test: manual. Build and boot pass.

Change-Id: I52c367e75100f6af2ab782f58755bc5727b1dd72
2022-03-18 22:57:51 +00:00
TreeHugger Robot
c7af3f3088 Merge "Remove DisplayHashingService constructor" into tm-dev 2022-03-18 18:21:11 +00:00
chaviw
4759768c18 Remove DisplayHashingService constructor
There's no need for the constructor and it shows up as missing CTS tests
for it. Rather than adding tests, just remove the constructor.

Test: atest DisplayHashManagerTest
Bug: 220812349
Change-Id: I6104a4955c4ca107820de39d0547d3901d96ca18
2022-03-17 12:47:12 -05:00
Nicholas Ambur
3d1093eefb expand test API for DSP kephrase trigger
Expands the existing test API to include the KeyphraseExtra information
in the fake DSP trigger event.

Test: atest CtsVoiceInteractionTestCases
Test: atest CtsVoiceInteractionHostTestCases
Bug: 193232191
Change-Id: I3392cb37afaed6f67fb2f3b22edcbe7c869d1eba
(cherry picked from commit 46c4ba27d1)
2022-03-16 19:22:27 +00:00
Ayush Sharma
46653a91c3 Fix security hole in GateKeeperResponse
GateKeeperResponse has inconsistent writeToParcel() and
createFromParcel() methods, making it possible for a malicious app to
create a Bundle that changes contents after reserialization. Such
Bundles can be used to execute Intents with system privileges.

We fixed related issues previously for GateKeeperResponse class, but
one of the case was remaining when payload is byte array of size 0,
Fixing this case now.

Bug: 220303465
Test: With the POC provided in the bug.
Change-Id: Ida28d611edd674e76ed39dd8037f52abcba82586
2022-03-16 18:04:03 +00:00
Kathy Chen
c7a552d74f Address API review feedback for AmbientContext. Add shell method for more test coverage. Do not unregister request from the same client and delegate to AiAi to handle it.
Test: CTS tests
Bug: 219740201
Change-Id: I8fa9df9cab9965d84d301760f4f7fba08dc44f54
(cherry picked from commit 542fc25dff)
2022-03-15 18:36:25 +00:00
Robert Carr
027b59d90a WMS/ViewRoot: Prepare for Async BLAST Sync [1/N]
We would like to make relayoutWindow a non-blocking call,
and of course why not, who likes blocking. However it functions
as a critical path of BLASTSync. To understand why examine the
Guarantee described in BLASTSync.md.

In order to implement this guarantee we need to know
“Which frame has the client finished drawing” when it calls
finishDrawing. The current answer to this question is
“The frame reflecting the state observed in the last call
to relayoutWindow”. The comments on mPending and mCurrentDrawHandlers
also have a lot more context on how this works currently. Since
relayoutWindow has a critical section, it also ensures that changes
to syncable state and preparation of sync will be observed atomically
(since they are both observed over relayoutWindow, which is always
called before any frame drawing updated syncable state).

We design a new protocol described in BLASTSync.md, which uses a seqId
to track which call to finishDrawing reflects which syncable state.
We implement this seqId based system. Unfortunately the WindowManager
doesn’t quite conform to the requirements specified by the protocol,
and a follow up CL ensures that syncable state changes will
always be sent with the seqId.

This CL simply adds the protocol specification and makes some required
interface changes. It can be seen to be a no-op.

Bug: 161810301
Bug: 175861051
Bug: 175861127
Bug: 200285149
Change-Id: If2dea07121fe7de5d2524c5b63678dddf955d4b7
2022-03-14 08:08:40 -07:00
Fabian Kozynski
82b2876457 Merge changes from topics "172251878", "presubmit-am-7890421506ee474b9057d3c5d333e341" into tm-dev
* changes:
  CompatChange to use hidden API in TileService
  Fix loopers in TileServices
2022-03-10 19:09:25 +00:00
Fabian Kozynski
af6c54c109 CompatChange to use hidden API in TileService
This adds a new hidden API in StatusBarManager for active
TileService#requestListeningState. That way, we can verify that the
calling package is the same as the one belonging to the tile.
This is enforced using CompatChange for apps that target T+.

Test: atest StatusBarManagerServiceTest
Test: atest TileServicesTest
Test: atest CtsSystemUiHostTestCases
Test: sample app targetting T
Fixes: 172251878

Change-Id: Ic9b8aca55dcfc2b32b018a5308f19e49a933c4c9
2022-03-10 16:47:27 +00:00
Darrell Shi
485e5e223c Merge "Change default showClockAndComplications to false." into tm-dev 2022-03-09 17:00:35 +00:00
Bryce Lee
650bc974bf Merge "Clear reference to DreamActivity window." into tm-dev 2022-03-09 00:22:19 +00:00
Peiyong Lin
7fd2f7f29f Add permission for takeScreenshot API.
takeScreenshot is a system API of GameSession and hence should be
guarded by MANAGE_GAME_ACTIVITY permission.

Bug: b/217986003
Test: atest GameServiceTest
Change-Id: I5591435245ba07abf6c9020ef89905f195309a92
2022-03-08 23:41:10 +00:00
Darrell Shi
008d1da7f5 Change default showClockAndComplications to false.
This makes sure existing behaviors don't change, and only dreams that
specify show dream overlay complications get them.

Change-Id: Ic5f440d0519432e6158c5aa64409abd402d48139
Test: atest DreamOverlayServiceTest
Bug: 214456383
Fix: 214456383
2022-03-08 22:02:14 +00:00
Xiang Wang
81aa0eac27 Merge "Provide game task bitmap to TakeScreenshotService as screenshot" into tm-dev 2022-03-08 20:06:57 +00:00
Bryce Lee
abfdc8fc38 Clear reference to DreamActivity window.
This changelist clears the reference to the DreamActivity window once
the activity is cleared in DreamService. Holding onto the reference
will lead to a DreamActivity instance leak.

Test: verified leak no longer present through hprof
Bug: 221285764
Change-Id: I1494bcdeaa1b23c0006867ff8eb1806bd5206eba
2022-03-08 09:36:01 -08:00
Treehugger Robot
598d987cd8 Merge "Update DreamService owners." am: da8c4948cb am: 5c35e763ef am: abee835c34
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1976106

Change-Id: Ie85c339f9c34d041df2d7e0a71fdb1f0acf90062
2022-03-08 00:27:05 +00:00
Treehugger Robot
5c35e763ef Merge "Update DreamService owners." am: da8c4948cb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1976106

Change-Id: I8bbfa9852af93e1b98c21028e4fdff835fae9987
2022-03-07 23:42:45 +00:00
Treehugger Robot
da8c4948cb Merge "Update DreamService owners." 2022-03-07 23:08:33 +00:00
brycelee
af2fa38271 Update DreamService owners.
Change-Id: I591f313e30d3ab435fe316bab752c1e80d28394a
Test: N/A
2022-03-07 16:49:34 +00:00
Xiang Wang
ab322f8521 Provide game task bitmap to TakeScreenshotService as screenshot
* Move the BitmapUtil to com.android.internal package
* Remove bitmap result from GameSession#takeScreenshot API

Bug: 219992742
Test: atest GameServiceProviderInstanceImplTest
Change-Id: I4bf29d623f781434ec7ffe4443e658880c31e619
Move the BitmapUtil to com.android.internal package
2022-03-04 17:23:07 -08:00
Bryce Lee
d3f2dc954f Revert "Change default showClockAndComplications to false."
This reverts commit ae8b96964c.

Reason for revert: causes overlay elements to not appear.

Test: manual
Bug: 222307681
Change-Id: I2d1f55227774a39f4b2dbe927ddd3aa1a5178351
2022-03-02 13:42:29 -08:00
TreeHugger Robot
91e92eb085 Merge "Add getter for filter in Field" into tm-dev 2022-03-01 06:09:16 +00:00
TYM Tsai
9b53f411f2 Add getter for filter in Field
Add getFilter method to retrieve filter set by setFilter.

Bug: 217554272
Test: atest DatasetTest
Change-Id: I70a5c2f332c656f453cb0992f89d76879bfa7412
2022-03-01 09:03:59 +08:00
Darrell Shi
f1c62fc74c Merge "Change default showClockAndComplications to false." into tm-dev 2022-02-28 23:59:27 +00:00
Darrell Shi
ae8b96964c Change default showClockAndComplications to false.
This makes sure existing behaviors don't change, and only dreams that
specify show dream overlay complications get them.

Test: atest DreamOverlayServiceTest
Bug: 214456383
Fix: 214456383
Change-Id: I5c94484d5af592159a07257137a138e41d0c6b53
2022-02-28 18:24:07 +00:00
Lucas Silva
68453bc360 Merge changes I26362ce1,I4ec34b99 into tm-dev
* changes:
  Pipe the dream label to the dream overlay service.
  Pipe the preview boolean to the dream overlay service.
2022-02-23 15:28:14 +00:00
Joanne Chung
04b037e07d Fix NPE when calling dispatchTouchEvent in FloatingToolbarRoot
Bug: 220328857
Test: manual
Change-Id: Ib41e6910e001ecb71c82f12db22b94ef7329a3fd
2022-02-23 01:54:33 +08:00
Lalit Maganti
464451edf3 Merge "base: remove onBind and onMessage from TraceReport API surface" am: b27a57a7b6 am: 47f0797eb0 am: 14bd0aa16b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1991971

Change-Id: I870c79b77799a9173c6a75fb302f307e0e621ef6
2022-02-18 20:39:13 +00:00