Commit Graph

15074 Commits

Author SHA1 Message Date
TreeHugger Robot
99b1d3da0f Merge "Revert "Enable IMS and its config context to obtain UI component"" into rvc-dev am: 9e7c46190a am: 213be87921 am: 3243b12ac8 am: 8a7ed76dcf
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11988595

Change-Id: Ic0648b1764161291c083e83662fcf0c2dd856396
2020-06-25 01:16:21 +00:00
TreeHugger Robot
3243b12ac8 Merge "Revert "Enable IMS and its config context to obtain UI component"" into rvc-dev am: 9e7c46190a am: 213be87921
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11988595

Change-Id: Id810ddb30a51d5e5a4013f3516d812c5cf2923bb
2020-06-25 00:55:00 +00:00
TreeHugger Robot
213be87921 Merge "Revert "Enable IMS and its config context to obtain UI component"" into rvc-dev am: 9e7c46190a
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11988595

Change-Id: I120e7328f1fe8a72292f73ca07320d02b5587554
2020-06-25 00:47:34 +00:00
TreeHugger Robot
9e7c46190a Merge "Revert "Enable IMS and its config context to obtain UI component"" into rvc-dev 2020-06-25 00:41:07 +00:00
Alistair Delva
71b8a0456c Revert "Enable IMS and its config context to obtain UI component"
Revert "Verify IMS to get display and WM"

Revert submission 11823238-ims_ui_context

Reason for revert:
Broke the following tests:
android.os.cts.StrictModeTest#testIncorrectContextUse_GetDisplay
android.os.cts.StrictModeTest#testIncorrectContextUse_GetSystemService
android.os.cts.StrictModeTest#testIncorrectContextUse_GetViewConfiguration
But was submitted with a bypass.

Reverted Changes:
I688b46a92:Verify IMS to get display and WM
I172ceb2e1:Enable IMS and its config context to obtain UI com...

Bug: 157027563
Bug: 159795597
Change-Id: Id309faac0ac8f60ee0d92c26767a89f450ddc455
2020-06-24 22:31:53 +00:00
Automerger Merge Worker
67a228259c Merge "Merge "Address missed comments from previous CL" into rvc-dev am: dab5588e84 am: d00340e1a5 am: 439359869f" into rvc-qpr-dev-plus-aosp am: 23c9cc0cb7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11978216

Change-Id: I6fca331224199adce27ff8b835d4c54c74a112b6
2020-06-24 17:44:39 +00:00
Svetoslav Ganov
842f9e3b31 Merge "Address missed comments from previous CL" into rvc-dev am: dab5588e84 am: d00340e1a5 am: 439359869f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11978216

Change-Id: Ice21ea4808754a69d0c233d2c85669ff2460d2a0
2020-06-24 17:29:30 +00:00
Svetoslav Ganov
fb3d4a242a Merge "Address missed comments from previous CL" into rvc-dev am: dab5588e84 am: d00340e1a5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11978216

Change-Id: I8f4f4623c37a02632f74f3efef6486ce207ec46c
2020-06-24 17:13:36 +00:00
Svetoslav Ganov
9529f00aa7 Merge "Address missed comments from previous CL" into rvc-dev am: dab5588e84
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11978216

Change-Id: I2637826dde356b7604dffa907f4385c7b83a3780
2020-06-24 17:01:41 +00:00
Svetoslav Ganov
3e38462491 Merge "Handle reperenting of InlineContentView" into rvc-dev am: f8b9ddea71 am: a962563758 am: bf50afcb4e am: e6e30d2948
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11907687

Change-Id: Id8c4a07af383ef3f58bad760b28fdb5a69dc3e03
2020-06-24 07:22:38 +00:00
Svetoslav Ganov
bf50afcb4e Merge "Handle reperenting of InlineContentView" into rvc-dev am: f8b9ddea71 am: a962563758
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11907687

Change-Id: Ia18fc12a4015296d59985b376b159a1560717d90
2020-06-24 06:56:18 +00:00
Svetoslav Ganov
0de1884aef Merge "Handle reperenting of InlineContentView" into rvc-dev am: f8b9ddea71
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11907687

Change-Id: I9b0919075bc6e29cf4beb6d2e92097d74ac4d99b
2020-06-24 06:44:18 +00:00
Svet Ganov
4846803547 Address missed comments from previous CL
bug:153826463

Test: atest android.widget.cts.inline.InlineContentViewTest#testReparenting

Change-Id: Iddb1f4d2e0b7043517616d0ec3678a55f9eda34c
2020-06-24 06:39:28 +00:00
Svetoslav Ganov
f8b9ddea71 Merge "Handle reperenting of InlineContentView" into rvc-dev 2020-06-24 06:28:59 +00:00
Svet Ganov
a5b4990d96 Handle reperenting of InlineContentView
When an inline content view is reparented its surface is
getting offset and not being under the view itelf. This is
because the surface views manage the postion of their
surface and are assuming a location based off the window's
surface position. However after a reparenting the inline
content view's surface position becomes relative to that
of the new parent surface view. For example, two surface
views at position (10, 10) being reparented would reslut
in the surface of the parent being at (10, 10) while the
surface of the child being at (20, 20) while both views
would still be at (10, 10).

To address this we are intecepting when an inline content
view's surface is reparented and get a weak reference to
the view that owns the new parent surface. We then position
the inline content view's surface relative to the view that
owns the new parent surface, i.e. we position the surface
such that its location would not change because of the
fact it is being reparented.

While at this make sure the inline content view is marked
as not important for a11y to ernsure the a11y plugins don't
try to click on the view tree in the app's process but
insted on the views in the remote proccess, i.e. on the
embedded view tree.

bug:153826463

Test: atest android.widget.cts.inline.InlineContentViewTest#testReparenting

Change-Id: I2cff4b88d404a740bc447668e948eabccad084d2
2020-06-24 06:27:17 +00:00
Tiger Huang
0e9974c522 Merge "Disable user animations on insets whose visible frame is empty (refined)" into rvc-dev am: 77190b77f6 am: 4c3dac8019 am: 27a5c4bbf6 am: 8e25a4b574
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11908304

Change-Id: Ia3a523ffc6293d995303378f16589248c1deb652
2020-06-24 04:45:56 +00:00
Charles Chen
98fec6e684 Merge "Enable IMS and its config context to obtain UI component" into rvc-dev am: 8655743001 am: e3138eca89 am: dc26be9316 am: 771804d66e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11818544

Change-Id: Icc576f42e8209c1178013116c2f68e3e66f4a89d
2020-06-24 04:20:44 +00:00
Tiger Huang
27a5c4bbf6 Merge "Disable user animations on insets whose visible frame is empty (refined)" into rvc-dev am: 77190b77f6 am: 4c3dac8019
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11908304

Change-Id: I761b70375b94539dad9771f81397965fff467fb1
2020-06-24 04:20:05 +00:00
Tiger Huang
b6b69b2be2 Merge "Disable user animations on insets whose visible frame is empty (refined)" into rvc-dev am: 77190b77f6
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11908304

Change-Id: I26f41c07925b94a5eb06e12ab131896b661c9db4
2020-06-24 04:02:34 +00:00
Tiger Huang
77190b77f6 Merge "Disable user animations on insets whose visible frame is empty (refined)" into rvc-dev 2020-06-24 04:00:09 +00:00
Charles Chen
dc26be9316 Merge "Enable IMS and its config context to obtain UI component" into rvc-dev am: 8655743001 am: e3138eca89
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11818544

Change-Id: I2e820a5300bb6fb4e7d0f4444c09cad4a2d0a9c5
2020-06-24 03:51:10 +00:00
Charles Chen
ef613e3aad Merge "Enable IMS and its config context to obtain UI component" into rvc-dev am: 8655743001
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11818544

Change-Id: I4193edaaafb74607205189a521392e25981c9d43
2020-06-24 03:37:25 +00:00
Charles Chen
8655743001 Merge "Enable IMS and its config context to obtain UI component" into rvc-dev 2020-06-24 03:33:53 +00:00
Joanne Chung
1a990d9656 Merge "Made AutofillId.withoutSession is testable." into rvc-dev am: 234a31e2f5 am: d199a42291
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11716078

Change-Id: I0310cca11efa125868f8f3a981912874e38a1110
2020-06-23 23:10:58 +00:00
Joanne Chung
4d616e1062 Merge "Made AutofillId.withoutSession is testable." into rvc-dev am: 234a31e2f5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11716078

Change-Id: I10153e22b7540c53e2c00d4a0b8d5f36409a405e
2020-06-23 23:00:38 +00:00
Joanne Chung
234a31e2f5 Merge "Made AutofillId.withoutSession is testable." into rvc-dev 2020-06-23 22:56:59 +00:00
Ameer Armaly
daf046c153 [DO NOT MERGE] Bring back touch events for double tap and double tap and hold. am: 9e83d07824 am: db5409ae02
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11955493

Change-Id: I5866012c782c5608ee297094c33f488f63cdde2e
2020-06-23 22:37:03 +00:00
Ameer Armaly
db5409ae02 [DO NOT MERGE] Bring back touch events for double tap and double tap and hold. am: 9e83d07824
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11955493

Change-Id: If4f1c944a4d2560a0e5835544883a8625a31d83f
2020-06-23 22:26:18 +00:00
TreeHugger Robot
e16a6a02a7 Merge "[DO NOT MERGE] Bring back touch events for double tap and double tap and hold." into rvc-dev 2020-06-23 22:24:13 +00:00
Adrian Roos
06b04e967a Merge "IME animation: hide IME-related navbar icons until perceptible" into rvc-dev am: e658c76b5c am: ba68b71a5c am: 1b3d71002f am: b78766031f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11837615

Change-Id: I13528f9621e3c504b53c34f20e3baecbe3468c1f
2020-06-23 07:58:59 +00:00
Adrian Roos
b78766031f Merge "IME animation: hide IME-related navbar icons until perceptible" into rvc-dev am: e658c76b5c am: ba68b71a5c am: 1b3d71002f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11837615

Change-Id: I9bfe4da48628fa5f06b6646bbc44efae04f5f297
2020-06-23 07:48:09 +00:00
Adrian Roos
331b36e9f1 Merge "IME animation: hide IME-related navbar icons until perceptible" into rvc-dev am: e658c76b5c am: ba68b71a5c
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11837615

Change-Id: I004df2ce6233ade571fea0083d29a741b5a56100
2020-06-23 07:21:16 +00:00
Adrian Roos
f771bf5301 Merge "IME animation: hide IME-related navbar icons until perceptible" into rvc-dev am: e658c76b5c
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11837615

Change-Id: I8f32e4d6109277b36303fe1c3b1a94d49040a34b
2020-06-23 07:11:19 +00:00
Adrian Roos
e658c76b5c Merge "IME animation: hide IME-related navbar icons until perceptible" into rvc-dev 2020-06-23 07:06:48 +00:00
Joanne Chung
24abde551e Made AutofillId.withoutSession is testable.
We add new test in stage-aosp-rvc-ts-dev for R2, we need make this API
testable.

Bug: 156408900
Test: atest android.autofillservice.cts.inline.\
InlineAugmentedWebViewActivityTest

Change-Id: I27d1227f858aac83b3de1cb8ef719edf177524dc
Merged-In: I27d1227f858aac83b3de1cb8ef719edf177524dc
2020-06-23 00:38:40 +00:00
Ameer Armaly
9e83d07824 [DO NOT MERGE] Bring back touch events for double tap and double tap and hold.
Bug: 159168795
Test: atest TouchExplorerTest
Change-Id: I427b98c71ce8a2ac5b9285b2f34c1864f48c4a32
2020-06-22 13:58:51 -07:00
Charles Chen
d2fd037ab3 Enable IMS and its config context to obtain UI component
Test: atest StrictModeTest
Bug: 157027563

Change-Id: I172ceb2e17722a7cba917a6e3a808d7559cad3e0
2020-06-23 03:45:17 +08:00
Taran Singh
7bc870bc4c Merge "Fix InsetsConsumer leak" into rvc-dev am: 296855fe76 am: 85ba727a85 am: 4987048675 am: d2aad55cb8
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11935094

Change-Id: I982a1025fce7351628abd9744596713f13cee228
2020-06-22 19:22:34 +00:00
Taran Singh
4987048675 Merge "Fix InsetsConsumer leak" into rvc-dev am: 296855fe76 am: 85ba727a85
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11935094

Change-Id: I5ede4fa176aef12ff788893144a3a64191958976
2020-06-22 19:19:31 +00:00
Taran Singh
808f341a17 Merge "Fix InsetsConsumer leak" into rvc-dev am: 296855fe76
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11935094

Change-Id: Ifa5a992cdfd575ddde442f1e7df4ceb5c6a786c3
2020-06-22 19:13:14 +00:00
Taran Singh
296855fe76 Merge "Fix InsetsConsumer leak" into rvc-dev 2020-06-22 18:53:20 +00:00
Tiger Huang
618dbe022f Disable user animations on insets whose visible frame is empty (refined)
Floating IME or fullscreen IME won't cause insets (except the area
overlapped with navigation bar). It doesn't make much sense to let
apps move the IME at these cases.

Fix: 157777145
Test: atest InsetsSourceConsumerTest GlobalActionsImeTest
            ImeInsetsControllerTest
Change-Id: Id70f59be7653beedc02d6c8bc3b1bd50a357f4fe
2020-06-23 00:58:05 +08:00
TreeHugger Robot
c593334af7 Merge "Ignore onStartInput when WINDOW_FOCUS_GAIN_REPORT_WITH_SAME_EDITOR" into rvc-dev am: 70ad33113f am: 2d8df39d7c am: 92809870d0 am: e0659980e2
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11863061

Change-Id: I7b850b58050727567ec05b140b8c99f27fd0032f
2020-06-22 15:59:27 +00:00
Taran Singh
531404721f Fix InsetsConsumer leak
Activity was still referred from ImeInsetsSourceConsumer after
ViewRootImpl's mView was destroyed when ViewRoot's surface is cleared
using die signal.
This CL makes sure we still free-up resources at die signal.

Fix: 157955883
Test: atest NexusLauncherTests
Change-Id: Ia48f7b7a8cf6b867ce75b2b7393a60ba73b0c3d0
2020-06-22 15:32:47 +00:00
TreeHugger Robot
92809870d0 Merge "Ignore onStartInput when WINDOW_FOCUS_GAIN_REPORT_WITH_SAME_EDITOR" into rvc-dev am: 70ad33113f am: 2d8df39d7c
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11863061

Change-Id: I756f28edde2a871597dacfc8213f7b22b144ce46
2020-06-22 15:16:51 +00:00
TreeHugger Robot
d3a0198031 Merge "Ignore onStartInput when WINDOW_FOCUS_GAIN_REPORT_WITH_SAME_EDITOR" into rvc-dev am: 70ad33113f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11863061

Change-Id: I44a6add590bdc70b99201a2c0e517d0815b8f9b5
2020-06-22 15:01:26 +00:00
Adrian Roos
c22eec9d35 IME animation: hide IME-related navbar icons until perceptible
During transitions and while the IME is controlled by the app,
the IME may be "visible" as far as the IME framework is concerned,
but not actually perceptible by the user due to offsets or alpha
applied to the leash.

This may lead to out-of-place navbar symbols for the IME, especially
in gesture nav.

To avoid this, the ImeInsetsSourceConsumer now notifies the IMF of
whether it has made the IME unperceptible to the user.

For now, we ignore the cases where the IME is controlled by something
other than the client window - in that case, we just revert to the
previous behavior of it being always considered perceptible.

Fixes: 158079255
Test: manual, launch email compose activity, observe that back button only indicates once IME appears
Test: atest InsetsAnimationControlImplTest
Change-Id: I4dc9d6513d0559156f7da39244f3fc5ebc952ed4
2020-06-22 16:55:54 +02:00
TreeHugger Robot
70ad33113f Merge "Ignore onStartInput when WINDOW_FOCUS_GAIN_REPORT_WITH_SAME_EDITOR" into rvc-dev 2020-06-22 14:51:15 +00:00
Ming-Shin Lu
48bfc3165c Ignore onStartInput when WINDOW_FOCUS_GAIN_REPORT_WITH_SAME_EDITOR
CL[1] introduces new WINDOW_FOCUS_GAIN_REPORT_ONLY flows to notify
InputMethodService only reports IME input target to WM when focusing to
the next window and its input connection remains.

Originally in android Q and prior devices, we don't need such report
mechnism but just skip to start new input connection and ignore
onStartInput / onFinishInput for the above use case.

Since starts from Android R, new IME insets control APIs relying on this
mechanism (see CL[2]) to keep the actual IME input target up-to-date.

As we expected there should be no new input connection and additional
onFinishInput when CL[1] landed.

However, in IMMS, startInputUncheckedLocked will be called
to callback additional onStartInput for InputMethodService, which mostly
is not expected, except when focusing the same window after device
turned screen on, we need to start input and callback onStartInput to
align with the behavior of android Q or the prior platform.

Besides, to have more clear code logic and debugging concept of
ignoring onStartInput and onFinishInput only when focused the same editor
with input connection remains, we remove WINDOW_FOCUS_GAIN_REPORT_ONLY
reason and introduced 2 more start input reasons to distinguish the
different behavior:
    - WINDOW_FOCUS_GAIN_REPORT_WITH_SAME_EDITOR
    - WINDOW_FOCUS_GAIN_REPORT_WITHOUT_EDITOR

[1]: I45a9814d812ad906f417c24200fd4219959e2423
[2]: I9e8984b7e5aa989a53ece9e2576393f795b9ef94

Fix: 158624922
Test: atest FocusHandlingTest InputMethodStartInputLifecycleTest
Test: manual as below steps:
    1. Use Gboard, Open the emoji keyboard
    2. Swipe down to reveal notification shade
    3. Swipe up to dismiss notifications
    4. Expect the Emoji keyboard is still open without close

Change-Id: I2da99ae67b9ce4051dec0c0f0e975ebe6e1ab118
2020-06-22 12:22:33 +08:00
TreeHugger Robot
58da767c8c Merge "Animate IME with zero insets" into rvc-dev am: cc498f3e69 am: 5208fccc52 am: 727d5a2f14 am: 422a4d9355
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11829827

Change-Id: Ibeba89e6817b8bf0ee2ba05d8d51bbdce3d68137
2020-06-20 17:50:52 +00:00