Commit Graph

16709 Commits

Author SHA1 Message Date
Antonio Kantek
99ca9c02c0 Merge "Deleting DisplayContent#reparentDisplayContent and related code" into sc-dev am: 1de80b1d70
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14740040

Change-Id: I21af7b134a92c6c4b14b96056d06cc393c87b0ce
2021-06-03 07:19:42 +00:00
Adithya Srinivasan
5179933d6a Merge "Add TaskSurfaceHelper/Controller in WMShell to plumb game mode to SF" into sc-dev am: c6273f7f15
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14687471

Change-Id: I78361faa7f6726a4540e5d2d0114cc3bdd48bd12
2021-06-03 07:06:40 +00:00
TreeHugger Robot
2087be9526 Merge "ViewRootImpl: Correct opaque flag usage" into sc-dev am: a731c9f3f9
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14724164

Change-Id: I8d17d2547828e3dfcbc382accefcad3e50d789c3
2021-06-03 06:49:39 +00:00
Winson Chung
78aeb536c6 Merge "Always copy provided gesture exclusion rects" into sc-dev am: 69660aaf86
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14729093

Change-Id: I66bf54c5bed5d7a50efdd533d2d623756e674084
2021-06-03 06:21:43 +00:00
Antonio Kantek
1de80b1d70 Merge "Deleting DisplayContent#reparentDisplayContent and related code" into sc-dev 2021-06-02 23:23:41 +00:00
Adithya Srinivasan
c6273f7f15 Merge "Add TaskSurfaceHelper/Controller in WMShell to plumb game mode to SF" into sc-dev 2021-06-02 22:00:09 +00:00
TreeHugger Robot
a731c9f3f9 Merge "ViewRootImpl: Correct opaque flag usage" into sc-dev 2021-06-02 09:28:33 +00:00
Evan Rosky
3c85ed5080 Inform SurfaceFlinger about displays which receive input
Right now, multiple display devices can share a layerstack.
This means that when constructing InputWindowInfo, its
impossible to know which display transform matches the
display viewport that inputflinger dispatches against. To
remedy this, have displaymanager inform surfaceflinger
which displays "receiveInput" using the same logic that
controls which display viewport it sends to inputflinger.

Bug: 179274888
Test: atest SetDisplayStateLockedTest
Change-Id: I85f1d0ac6fcf9c37a523eb80ed02afeff555c93d
2021-06-01 11:58:34 -07:00
Winson Chung
69660aaf86 Merge "Always copy provided gesture exclusion rects" into sc-dev 2021-06-01 18:49:41 +00:00
Antonio Kantek
42a60dc25c Deleting DisplayContent#reparentDisplayContent and related code
This code was used by ActivityView (which was deleted) only.

Test: manual (seahawk)
Bug: 179161778
Change-Id: I65544daac3bc2a280239bdcbd54dc726d604165f
2021-05-31 20:46:08 -07:00
Tiger Huang
0959847e8e Merge "Update the surface position of each control in insets animation" into sc-dev am: 178d98e23b
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14776096

Change-Id: Ia684edc90014e6037fda9ebe77e7325e18f3981d
2021-05-31 14:36:26 +00:00
Tiger Huang
fa6f73429d Update the surface position of each control in insets animation
If the surface position is changed during the insets animation,
the surface position of the controls in the animation should be updated.
Otherwise, the cached position in the animation will overwrite the
newly-updated leash position.

Fix: 177925500
Test: Steps in the bug.
Test: 1. Open Window Insets Tests -> Window Insets Controller.
      2. Click on the [IME INVISIBLE] button.
      3. Click on the [STATUS BARS VISIBLE] button during IME animation.
      See if the position of IME (Gborad) is correct.
Change-Id: I7441426a41019996651220e86ca90dd416ef9498
2021-05-31 18:08:31 +08:00
Ahaan Ugale
7993e317bf Merge changes from topic "tr-anim" into sc-dev am: 27008c1123
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14661091

Change-Id: I09652536d90edf3c5f378159ccd89db6bca28909
2021-05-28 02:11:10 +00:00
TreeHugger Robot
6ba0a39b7b Merge "TranslationResponseValue: Override equals() behaviour for Extras." into sc-dev am: e5f65a20f1
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14722064

Change-Id: I5ca80ff409ebaa5ba00c2c7e2b2a0bf6007fe1ea
2021-05-27 22:31:05 +00:00
Adithya Srinivasan
4e8a1a05b1 Add TaskSurfaceHelper/Controller in WMShell to plumb game mode to SF
TaskSurfaceHelper(Controller) will be used as an interface to communicate
with the SurfaceControl of the underlying Task. This change adds a function
to set the game mode metadata for the task layer.

Bug: 186025682
Test: atest TaskSurfaceControllerTest
Change-Id: I136b65636b98e1883eaf9e4f4f0b34c61350d4e4
2021-05-27 20:12:08 +00:00
Hongming Jin
d6cc13a99c Merge "Add features to allow filtering logging based on interfaces." into sc-v2-dev 2021-05-27 19:34:09 +00:00
Ahaan Ugale
df75689d4d Translate: Text alpha animation on toggling translated state.
Apply a simple text alpha animation when toggling between original and
translated text. The text is fully faded out, then swapped to the new
text, then the fading is reversed.

Quick toggles are handled by ending the previous animation (which resets
the alpha value) when starting a new one. If the toggle is extremely
fast (<250ms for the currently defined animation duration), the text
stays in it's original state instead of swapping back-and-forth. This is
arguably not ideal, but anyway not worth the complexity for fixing.

There is an unhandled edge case where if the color is changed by the app
during the animation, the app's change would get overridden. It should
be rare and doesn't seem very important to fix.

Bug: 178651829
Test: atest CtsTranslationTestCases
Test: manual - across several apps, while scrolling, concurrently
 interacting with the app, concurrently closing the app, selecting text
 during the animation (with animation speed slowed down to see the
 effect).
Change-Id: I08a26de2253bb345f01186a6748b2d0ff6c2a419
2021-05-27 09:34:18 -07:00
Ahaan Ugale
02fe90bb42 Translate: Ignore duplicate translations.
This can happen if UiTranslationManager#startTranslation is called more
than once for the same view. If the same TranslationResponse is
returned, it can simply be ignored.

This is preferable to ignoring duplicate ViewTranslationRequests, since
the Response is already cached. The TranslationService can cache
translations, so duplicate requests isn't an issue.

Ideally, the platform intelligence shouldn't issue multiple requests for
the same view.

Bug: 144292180
Test: atest CtsTranslationTestCases
Change-Id: I0bba4a19284a61a9c7a5b79c71b4f42ddffe4e32
2021-05-27 09:33:49 -07:00
Ahaan Ugale
4df6d70e4c TranslationResponseValue: Override equals() behaviour for Extras.
Bundle doesn't override equals(). In TranslationResponseValue, the
Extras is used as a simple value type, so contents can be compared.

Bundle.kindofEquals probably works here, but this change just makes it
work for empty bundles for now, to fix a bug in animation.

Bug: 144292180
Test: atest CtsTranslationTestCases
Change-Id: I68daac8cafceb1aa446ee89ba1405595b22e6213
2021-05-27 09:31:58 -07:00
Ahaan Ugale
39631823d8 Merge "Force to notify ContentCapture event even view is not laid out" into sc-dev am: 75d63c116c
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14683430

Change-Id: I2f7a064416c1f82de756084cc87758f2de77432c
2021-05-27 00:51:19 +00:00
Ahaan Ugale
75d63c116c Merge "Force to notify ContentCapture event even view is not laid out" into sc-dev 2021-05-27 00:35:19 +00:00
Hongming Jin
a0f9d36647 Add features to allow filtering logging based
on interfaces.

Bug: 157601519
Test: adb shell cmd accessibility start-trace -t IAccessibilityServiceConnection IAccessibilityServiceClient IAccessibilityManager
      adb shell cmd accessibility stop-trace
Change-Id: Iab5ec5ae3d77c893a646cf1ae106ff5fa50d9281
2021-05-26 13:36:55 -07:00
Winson Chung
36f8ff7f85 Always copy provided gesture exclusion rects
- Disallow callers from concurrently modifying the exclusion rects
  list after it's set by making a copy.

Bug: 166594759
Test: atest android.view.cts.SystemGestureExclusionRectsTest
Change-Id: I80183cf85d16ac669320cfda9ec9deed9e348e33
2021-05-26 16:57:49 +00:00
TYM Tsai
1d0ad76872 Force to notify ContentCapture event even view is not laid out
Some recycled views cached its layout and a relayout is unnecessary.
In this case,  system still needs to notify content capture the view
appeared.

Bug: 177687849
Test: atest CtsContentCaptureServiceTestCases
Test: atest ContentCapturePerfTests
Change-Id: I480436c4fc3508b9eed485421a1cc778d55d5dde
2021-05-27 00:52:50 +08:00
Joanne Chung
c9a1329a73 Merge "Added documentation for TResponseValue bundle on how to use and example structure." into sc-dev am: ba76d446ee
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14669189

Change-Id: I3f405fa834ce18a1de9dda3e5f957cd884216268
2021-05-26 06:33:49 +00:00
Joanne Chung
ba76d446ee Merge "Added documentation for TResponseValue bundle on how to use and example structure." into sc-dev 2021-05-26 06:18:49 +00:00
Ahaan Ugale
ab5c58b56d Merge "Manual overwrite @removed for genereated builder apis." into sc-dev am: c449e23d4d
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14722632

Change-Id: I3e83169d1915cd98ce88572619ee0b9d23b8f11c
2021-05-26 01:08:11 +00:00
Robert Carr
776dd9e556 ViewRootImpl: Correct opaque flag usage
In performTraversals, "params" may be null. In this case we were
not passing params to the WM indicating no changes (an obscure
artifact of the protocol).  In R the WM would simply ignore this
however our updateOpacity logic in S is treating null as "translucent"
it seems easiest to just pass mWindowAttributes directly avoiding
the null case. While the opacity was broken, it seems an animation
was added to StartingSurfaceDrawer which depends on having a translucent
window. We also update this code to request a transparent pixel format
as would have been required in the R API.

Bug: 186555833
Test: Existing tests pass
Change-Id: I180bf1796bbb4b7049ae9811f674f31014c2a400
2021-05-25 17:14:26 -07:00
Adam He
a8ad787594 Manual overwrite @removed for genereated builder apis.
Fixes: 186475868
Test: atest CtsTranslationTestCases
Change-Id: Ie56e57ac0afb2a3b1c99eb489d38d557fd1e2124
2021-05-25 13:07:12 -07:00
Tiger Huang
91b4b7bd05 Merge "Flush the animation if it is canceled" into sc-dev am: ea428b55e7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14640272

Change-Id: I06940f0be00a298776f05fe22be17e4cbf8bc201
2021-05-25 17:26:39 +00:00
Tiger Huang
ea428b55e7 Merge "Flush the animation if it is canceled" into sc-dev 2021-05-25 17:12:16 +00:00
Vadim Caen
be2ac213fe Merge changes from topic "splashscreen-surface" into sc-dev am: fc1efcb428
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14186656

Change-Id: Ie0e17006e404de22c20cce84cf7a43fdf0eb85e7
2021-05-25 15:24:45 +00:00
Vadim Caen
fc1efcb428 Merge changes from topic "splashscreen-surface" into sc-dev
* changes:
  Do not reparent the SC when package is already realeased
  Display Splashscreen AVD in a SurfaceView
2021-05-25 15:24:08 +00:00
Tiger Huang
1ce223481a Flush the animation if it is canceled
The issue was that: if navigation bar is requested to show while a
controller is playing an animation of hiding both status bar and
navigation bar, the animation will be canceled and will stay in an
intermediate state, and then, another controller will play an animation
of showing navigation bar. At the end, status bar will stay visible but
it should be invisible.

This CL fast-forwards the insets animation to the end state if it is
canceled.

Fix: 185459811
Test: Steps in the bug.
Change-Id: Id6ae321b6c153ed1d7155afd6111b193ac9c045c
2021-05-25 13:39:49 +00:00
Galia Peycheva
cb824953ce Merge "Add TunnelModeStateListener in java+jni" into sc-dev am: ee1219ac1d
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14340805

Change-Id: Ie5b40d5be1fea10aafbffaf3c377ac25d8d2b20c
2021-05-25 12:08:32 +00:00
Galia Peycheva
ee1219ac1d Merge "Add TunnelModeStateListener in java+jni" into sc-dev 2021-05-25 12:05:42 +00:00
Joanne Chung
df12bfb9ff Merge "Refine the ViewTranslationCallback usage." into sc-dev am: cee152ee43
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14186069

Change-Id: I8fd555cf8e64110681a81404d262464fec0073dc
2021-05-22 07:55:19 +00:00
Joanne Chung
cee152ee43 Merge "Refine the ViewTranslationCallback usage." into sc-dev 2021-05-22 07:41:18 +00:00
Nikita Dubrovsky
cca2545680 Merge "Improve javadocs for OnReceiveContentListener" into sc-dev am: 7bac522d23
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14607569

Change-Id: I3f8092c14abcc076f013cecafae5f7b92913f6bc
2021-05-22 05:11:20 +00:00
Nikita Dubrovsky
7bac522d23 Merge "Improve javadocs for OnReceiveContentListener" into sc-dev 2021-05-22 05:05:40 +00:00
Nate Myren
286db646fe Merge "Add PrivacyIndicator APIs to WindowInsets" into sc-dev am: 4421186590
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14273325

Change-Id: Ibef0b8fe751d69ad6d622594d3dee5e0a744bc0f
2021-05-22 00:18:14 +00:00
Nate Myren
4421186590 Merge "Add PrivacyIndicator APIs to WindowInsets" into sc-dev 2021-05-22 00:13:34 +00:00
Evan Rosky
6399316a1e Merge "Hook up nav-bar attach/detach logic to Shell Transitions" into sc-v2-dev 2021-05-21 23:28:32 +00:00
Nikita Dubrovsky
abd1ae225b Improve javadocs for OnReceiveContentListener
Bug: 186122267
Test: Presubmit
Change-Id: I7d9648ea3d942f69770dc65c1d4f4a799edf11ad
2021-05-21 15:53:15 -07:00
Yohei Yukawa
a8fab3749d Merge "Remove CursorAnchorInfo#createForAdditionalParentMatrix()" into sc-dev am: 53fb57c212
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14429500

Change-Id: I79e0ece0c6d79954a13437420dbaf010a514babe
2021-05-21 22:35:59 +00:00
Yohei Yukawa
e56486181f Merge "Remove InputMethodManager#reportActivityView()" into sc-dev am: e738cfc898
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14429499

Change-Id: Id5b4932a00aa13b8485203dc3ed8aa73df9db0d1
2021-05-21 21:43:08 +00:00
Adam He
db0514ea5b Added documentation for TResponseValue bundle on how to use and example
structure.

Bug: 187219452
Test: atest CtsTranslationTestCases
Change-Id: I9bc6e5bcdd0b5b551be5afc727554905dc1df4fe
2021-05-21 11:54:23 -07:00
Yohei Yukawa
898b28fecc Remove CursorAnchorInfo#createForAdditionalParentMatrix()
This CL logically reverts my previous CL [1], which added an @hide
method

  CursorAnchorInfo#createForAdditionalParentMatrix()

as a preparation to support CursorAnchorInfo API on ActivityView.

Now that InputMethodManager#reportActivityView() is removed [2], we
also do not need this @hide method any more too.

Note also that CursorAnchorInfo is now fully tested in CTS rather than
FrameworksCoreTests [3].  Thus it's fine with removing
CursorAnchorInfoTest.java from FrameworksCoreTests.

  [1]: Ic7f9057623ffc61ec7a6121735dc39adecf4649d
       e4410a135b
  [2]: Idd60d96a39f827197d189beb5de016446576d9cd
       44c499d853
  [3]: Ib758bddff34b4722b39c94e7ad4e8f8da2bb8b92
       c4ef1d6ec22dc2af2ed339fd4e78075903783be0

Bug: 115693908
Bug: 179161778
Test: atest CtsInputMethodTestCases:CursorAnchorInfoTest
Change-Id: I0a05453eeed863db5bfe4b965ab4bcbad67f2783
2021-05-21 18:14:26 +00:00
Yohei Yukawa
44c499d853 Remove InputMethodManager#reportActivityView()
This CL logically reverts my previous CL [1], which re-enabled
CursorAnchorInfo API for ActivityView since ActivityView is finally
removed [2].

There should be no user/developer impact in this CL as

   InputMethodManager#reportActivityView()

is called nowhere.

 [1]: Id0411a80456182111bb5b681c6d1230b58e7ec2e
      b4f328a2f3
 [2]: Ic66f3740819634366edb20a34a7c8177af258c2f
      5456990f7e

Bug: 115693908
Bug: 179161778
Test: atest CtsInputMethodTestCases
Test: atest CtsWindowManagerDeviceTestCases:ActivityViewTest
Change-Id: Idd60d96a39f827197d189beb5de016446576d9cd
2021-05-21 18:13:17 +00:00
Evan Rosky
2996ef5f4f Hook up nav-bar attach/detach logic to Shell Transitions
For the Recents gesture animation, the navbar gets attached to
the app while dragging. The actual navbar attach/detach logic
lives in Core, so this change basically hacks the logic into
the core-side of shell transitions. This is ugly and should
be a temporary solution until that behavior can move to Shell.

This also had to add an ugly API on IATM because the lifecycle
of the navbar reparent is different from the transition lifecycle
in this instance because of LiveTiles.

Bug: 188595497
Test: With shell transit enabled, open app, swipe up to recents.
      Observe navbar attached to app during drag and put back
      on screen afterwards. Also, no more crash.
Change-Id: I1aba53314329e3fd7678a7e8a5fc8ffa0294e395
2021-05-21 08:47:46 -07:00