Commit Graph

18299 Commits

Author SHA1 Message Date
Tiger Huang
2c45fb8608 Merge "Introduce updateVisibility and updateLayout" into tm-dev am: 0797d97536
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17292204

Change-Id: Ia7f267a328fe65e7adc3390c8a6bc88ab87d48dd
2022-03-24 00:42:35 +00:00
Jon Eckenrode
d03aaba7b2 Merge "Revised the API documentation of the getMetrics and getSize methods to account for differences in API levels." am: 7ac639b11b am: d3fd072f68 am: bfad78abc6 am: 11bc9c9d16
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1957098

Change-Id: I637c87ebd1728dd353e60967d842c578d7ee9a81
2022-03-24 00:31:14 +00:00
Tiger Huang
0797d97536 Merge "Introduce updateVisibility and updateLayout" into tm-dev 2022-03-23 17:44:42 +00:00
Jon Eckenrode
11bc9c9d16 Merge "Revised the API documentation of the getMetrics and getSize methods to account for differences in API levels." am: 7ac639b11b am: d3fd072f68 am: bfad78abc6
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1957098

Change-Id: I38e40ff8310cf9a4e1a1ee9b527c62ce62f8fed4
2022-03-23 15:11:39 +00:00
Jon Eckenrode
bfad78abc6 Merge "Revised the API documentation of the getMetrics and getSize methods to account for differences in API levels." am: 7ac639b11b am: d3fd072f68
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1957098

Change-Id: I534e88ec19327a174068807996f133740966741e
2022-03-23 14:55:41 +00:00
Jon Eckenrode
7ac639b11b Merge "Revised the API documentation of the getMetrics and getSize methods to account for differences in API levels." 2022-03-23 14:16:19 +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
TreeHugger Robot
37db05baf5 Merge "Use getLatestVsyncEventData for late frame." into tm-dev am: 77fbf6f1d0
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17188552

Change-Id: I0b0c738dc825c076dfa7407fd87d328b6a85c115
2022-03-22 23:19:39 +00:00
joneckenrode
25bfb7ef70 Revised the API documentation of the getMetrics and getSize methods to account for differences in API levels.
Bug: 183681583
Test: Built API documentation
Signed-off-by: joneckenrode <joneckenrode@google.com>
Change-Id: I5659661dad29c964ac614326f79164326b3093ec
2022-03-22 23:00:03 +00:00
TreeHugger Robot
77fbf6f1d0 Merge "Use getLatestVsyncEventData for late frame." into tm-dev 2022-03-22 22:35:50 +00:00
Sally Yuen
91b35e23ed Merge "Fixes for a11y selection" into tm-dev am: 8c3314f7aa
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17198946

Change-Id: I3792d41a856095cfadf37aa3b17eb2189a4bc6c7
2022-03-22 20:22:21 +00:00
Sally Yuen
8c3314f7aa Merge "Fixes for a11y selection" into tm-dev 2022-03-22 20:15:13 +00:00
TreeHugger Robot
0d876efbdd Merge "Use DeviceConfig to get the default VelocityTracker strategy" 2022-03-22 16:48:15 +00: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
Pablo Gamito
1b527673cf Merge "Undeprecate animation background color" into tm-dev am: 7fb9397972
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17045230

Change-Id: Icd103496a6b6d0a1f6dece0c7f6acee239f4d67f
2022-03-22 13:54:52 +00:00
Pablo Gamito
7fb9397972 Merge "Undeprecate animation background color" into tm-dev 2022-03-22 13:48:12 +00:00
Tiger Huang
def9123044 Merge "Refine PRIVATE_FLAG_LAYOUT_SIZE_EXTENDED_BY_CUTOUT" into tm-dev am: 57d28b9a6e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17197586

Change-Id: I16d7c8f0cf00238fad7f320eff641be509360eda
2022-03-22 07:52:39 +00:00
Tiger Huang
57d28b9a6e Merge "Refine PRIVATE_FLAG_LAYOUT_SIZE_EXTENDED_BY_CUTOUT" into tm-dev 2022-03-22 07:46:51 +00:00
Tiger Huang
126f599aac Merge "Use public types to update system UI visibility" into tm-dev am: d5a1d1e24a
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17291303

Change-Id: Idc58b86da867695e15bd7093a195de5a1ac40363
2022-03-22 04:11:28 +00:00
Tiger Huang
e5bc2f5ef5 Merge "Let the client compute the backdrop frame on its own" into tm-dev am: 630c25ddaa
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17254790

Change-Id: I9be7f3d1aa0e5529864f0043677d44100bd9ea71
2022-03-22 04:10:37 +00:00
Tiger Huang
d5a1d1e24a Merge "Use public types to update system UI visibility" into tm-dev 2022-03-22 04:09:08 +00:00
Tiger Huang
630c25ddaa Merge "Let the client compute the backdrop frame on its own" into tm-dev 2022-03-22 04:05:18 +00:00
TreeHugger Robot
c68f9c2133 Merge "Refine {SHOW,HIDE}_MY_SOFT_INPUT constants" 2022-03-22 03:13:34 +00:00
Arthur Hung
514835696a Merge "Expose input association to be testable" 2022-03-22 01:03:51 +00: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
Taran Singh
9556043ad4 Merge "Finish handwriting session for recents gesture" into tm-dev am: 4cff41a3f2
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17144828

Change-Id: Icffe80f23fdbd5e25609e9fb381a9b67fdb8258a
2022-03-21 20:58:33 +00:00
Taran Singh
4cff41a3f2 Merge "Finish handwriting session for recents gesture" into tm-dev 2022-03-21 20:54:31 +00:00
Greg Kaiser
27b398371a Merge "Revert "Replace VRI and SV sync logic with SurfaceSyncer"" into tm-dev am: 45e7a34c89
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17291304

Change-Id: Ieafde6517476f711213606825a803678ba4a331f
2022-03-21 20:04:44 +00:00
Greg Kaiser
45e7a34c89 Merge "Revert "Replace VRI and SV sync logic with SurfaceSyncer"" into tm-dev 2022-03-21 20:00:42 +00:00
Sally Yuen
244554ed91 Merge "Check for null text location when applying scaling changes" into tm-dev am: 5d9e19b664
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17261698

Change-Id: I6eb00dd9b524ebcdd756db16bb06025218500a1f
2022-03-21 16:46:52 +00:00
Sally Yuen
5d9e19b664 Merge "Check for null text location when applying scaling changes" into tm-dev 2022-03-21 16:25:16 +00:00
Gary Lin
5ade0d529d Revert "Replace VRI and SV sync logic with SurfaceSyncer"
This reverts commit f37c024b00.

Reason for revert: Google Camera App has black preview

Change-Id: Ib691cc8f9a80412756855e5dd7bcc2a12f842ce9
2022-03-21 10:02:35 +00:00
Tiger Huang
e389f15ca6 Use public types to update system UI visibility
Taskbar is also considered as a navigation bar. While its visibility is
changed, View#dispatchSystemUiVisibilityChanged should be called.

Bug: 225765490
Test: atest WindowInsetsControllerTests
Change-Id: Ie9624211aa6077085966d588c28601000c68a4f2
2022-03-21 17:24:40 +08:00
Jacqueline Bronger
d2a5274d11 Merge "Implement custom PiP close action on TV." into tm-dev am: 3c5b9738c7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17046344

Change-Id: I3735f5a2a7400f155708c95116a0e7b738ebb9e5
2022-03-21 08:10:42 +00:00
Jacqueline Bronger
3c5b9738c7 Merge "Implement custom PiP close action on TV." into tm-dev 2022-03-21 07:56:37 +00:00
Tiger Huang
c3813c81a0 Merge "Push drag-resize mode to the client" into tm-dev am: 883190cdb3
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17222863

Change-Id: Ib2c9262b0229579ebe14f4a5b77986b6efa2045d
2022-03-21 06:08:46 +00:00
Tiger Huang
883190cdb3 Merge "Push drag-resize mode to the client" into tm-dev 2022-03-21 05:51:13 +00:00
Arthur Hung
7298692865 Expose input association to be testable
- Expose api via TestApi
- Add ASSOCIATE_INPUT_DEVICE_TO_DISPLAY permission to Shell
- Add port for uinput command

Bug: 215631144
Test: atest CtsInputTestCases
Ignore-AOSP-First: Permission that should be kept internal until T releases
Change-Id: I55f2141aabceb71475f5e7f7d590b2f95e05c5aa
2022-03-21 13:05:08 +08:00
Tiger Huang
351d589dad Let the client compute the backdrop frame on its own
Since the new split-screen doesn't need the fullscreen backdrop frame.
The backdrop frame will always be the window frame. The server doesn't
need to send the backdrop frame to the client. The client just needs to
offset the backdrop frame to (0, 0).

This CL also moves the logic of calling onWindowSizeIsChanging to the
handler thread because it reads some fields which should only be
accessed on the handler thread. Otherwise, there might be race
conditions.

Bug: 161810301
Test: 1. Perform drag-resize and drag-move on a freeform app, and see if
         the layout is expected.
      2. Move the divider in the split-screen mode, and see if there is
         any abnormal.
Change-Id: Ie0058db0447260dd0561634179fc7721d965a9e2
2022-03-20 14:36:54 +08: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
Mark Punzalan
bfba432fad Merge "Add package name to all UiTranslationStateCallback methods." into tm-dev am: dc59b8781e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17262916

Change-Id: Ib173b4be60ccb6fbeabf00e3ec050db1a7e2fcea
2022-03-19 23:32:51 +00:00
Mark Punzalan
dc59b8781e Merge "Add package name to all UiTranslationStateCallback methods." into tm-dev 2022-03-19 23:26:16 +00:00
Rob Carr
65a8e6e618 Merge "Async BLAST Sync [2/N]: Introduce seqId" into tm-dev am: 3e6bd44753
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17100718

Change-Id: I8d168e73e7b921ad46776200c8c9d71eae035a5d
2022-03-19 20:12:00 +00:00
Rob Carr
3e6bd44753 Merge "Async BLAST Sync [2/N]: Introduce seqId" into tm-dev 2022-03-19 20:06:11 +00:00
Ahaan Ugale
9f4a06f7ed Merge "Allow AutofillService can identify if fill dialog presentation is needed." into tm-dev am: ff1e4a4680
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17229068

Change-Id: I413ee7c38ffdb10699c348151641f1aee515023a
2022-03-19 06:16:24 +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
Mark Punzalan
49525ccb14 Add package name to all UiTranslationStateCallback methods.
This will be used by clients such as Gboard to ensure they are
responding to translation events for the correct activity. Ideally we
would include the activity token, in case there are multiple activities
being translated in an app, but that isn't supported right now and it
requires changes to EditorInfo (in Input Method Framework) to get the
activity token.

Also fixed an issue where the callback methods are invoked twice when
the IME itself is the translated app is registering a callback for
itself. Note: This happens in UiTranslationManagerTest where the test
activity and IME have the same uid, but shouldn't happen outside of
tests.

Bug: 223979041
Test: atest CtsTranslationTestCases
Change-Id: Id99f501b065b92fe3358c2ae525175ad3ea4b119
2022-03-19 05:28:21 +00:00
John Reck
302cf42988 Merge "Add setBuffer w/ release callback" into tm-dev am: bb0809e758
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17242896

Change-Id: I4b69be05b9c57fe5f9c13b5a3b5074d6d25a5d62
2022-03-19 01:50:06 +00:00
John Reck
bb0809e758 Merge "Add setBuffer w/ release callback" into tm-dev 2022-03-19 01:32:25 +00:00
Chavi Weingarten
a4c9a12878 Merge "Replace VRI and SV sync logic with SurfaceSyncer" into tm-dev am: ef3f71bfa8
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17014559

Change-Id: I6e5399341b6906f59f2c294d0cfcaa3a62a6c44d
2022-03-19 00:18:02 +00:00