The new fully gestural navigation changes how user goes home from an
app as well as the animation of the app transition. The current PiP animation (bounds) is not compatible with the new model because of the direction of movements. Instead of animating bounds, we can fade the PiP window in after app closing animation finishes.
Fixes: 122609330
Test: 1. Open youtube, play a video, tap home to observe the new PiP
animation (demo video attached in the ticket b/122609330) 2. With gestural nav on, observe pip transition when swiping up to home.
atest ActivityManagerPinnedStackTests
atest BoundsAnimationControllerTests
atest RecentsAnimationTestTest
Change-Id: I28eeb1aa99c4fd569845ca7a42561f6b20796f9b
For purposes of the screen rotation animation the system server is allowed
to capture secure (not protected) layers and trusted not to persist screenshots
which may contain secure layers. However when displaying the screen rotation animation,
the layer the screenshot is placed on will itself not be secure, so if we record
the animation the recording will contain persisted versions of the secure content. Make sure
we use the new API from SurfaceFlinger to set FLAG_SECURE if our screenshot contains secure
content.
Bug: 69703445
Test: Transaction_test#SetFlagsSecureEuidSystem
Change-Id: I1b016fb1ad56eccd712442a71cc134e5fa3b1ac6
This reverts commit 063eefa78a.
The problem with this fix is that services expect to be able to
determine if a node has certain capabilities, even if it is disabled,
and doesn't have the action associated with them.
Change-Id: Ia17ed6ed5f92737226cfe704dc71957f2ae5541b
Fix: 120247282
Test: it builds.
The objective is to allow us to push model parameters by using a settings flag,
without the need of pushing a new model file.
Settings.Global#TEXT_CLASSIFIER_ACTION_MODEL_PARAMS stores a comma
separated string that contains these three fields:
1. required_model_version
2. required_locales
3. serialized_preconditions
To ensure serialized_preconditions is applied to the target model file,
TextClassifierImpl only applies the serialized_preconditions when
required_model_version and required_locales are both met.
Test: atest frameworks/base/core/tests/coretests/src/android/view/textclassifier/
Test: adb shell settings put global text_classifier_action_model_params 'required_model_version=0,required_locales=en,serialized_preconditions=FAAAAAAADgAIAAAAAAAAAAAABAAOAAAAAAAAAA=='
Observe that the flag is actually applied in the model.
Test: Ensure that finalize is called when the activity is dead.
BUG: 123616497
Change-Id: Ie42dcfeee705c83bbb693a5c1a0fedd0821df5e7
Among other use cases, WM needs to be able to omit the IME from Task Snapshots, even while it
is on-screen.
Bug: 126614127
Test: Transaction_test.cpp#CaptureLayerExclude
Change-Id: I055d99106c9ce2ed90d64eca06961d88cbd5e2d4
This helps us to evaluate the fix.
BUG: 129695635
Test: frameworks/base/apct-tests/perftests/textclassifier/run.sh
Change-Id: I7d2d019faecb3721c044a43e24d86d98a08be64b
libtextclassifier (native side) will serialize the extra entity information
(like parsed datetime) into a byte array and passed it to framework.
Framework puts it to the extras Bundle of result object, i.e. TextClassification
and ConversationActions.
In the future, we will provide a library (maybe AndroidX) to deserialize the
string and return structured objects.
BUG: 129119759
Test: atest frameworks/base/core/tests/coretests/src/android/view/textclassifier/
Change-Id: I8091a1038691419825f5d6da3562b8ba81787dc7
For gestural navigation, having a small bar drawn by SystemUI
looks really really weird. Since we force the status bar
background to be drawn in the client, we can also force the
navigation bar background without expecting any compat issues.
Bug: 129751541
Test: Open legacy app, ensure black is drawn in the client
Change-Id: I9cd4c5dd799324ff10bf9d28750e8f238ab1e459
(cherry picked from commit 461bb11371)
The logic is like:
1. If content description string with app name placeholder is available,
and we also have a app name, then we will use this string.
2. Otherwise, fallback to content description string without app
name placeholder.
Test: atest frameworks/base/core/tests/coretests/src/android/view/textclassifier/
Test: Actually see the content description with app name is formatted
properly
BUG: 128541828
Change-Id: Iee1dc8d4a429d759d9ab3f4b84dc1ad13b698cdb
We show the background when the Surface view is BEHIND
not when it is in front.
Bug: 129359905
Test: SurfaceViewSurfaceValidatorTest#testOnTopHasNoBackground
Change-Id: I3f3139d50972626e4c70139f1008d70d2935cd0b
There was some old outdated logic about aborting draw if we have a
new surface. This isn't needed anymore and actually can cause up
to 5-10ms first draw delay for apps.
Test: AM/WM Presubmit CTS tests
Bug: 126612374
Bug: 123643797
Change-Id: I73d354efaee099e6a1ca1557e79440dc16e4976f
Also fixes an infinite recursion when invoking
TestableContext.(un)registerComponentCallbacks().
Test: atest WindowInsetsPolicyTest
Bug: 126511573
Change-Id: I5c9f40054493a83746bce6124d72412e8eb8a0d1
* changes:
More random optimzations to make things go faster
Don't compare configs during layout
Get rid of some ancient logic around layouting invisible windows
Window Manager spring cleaning
Our performance for wmLayout + prepareSurfaces regressed over
time, because we added a lot of functionality, but didn't have
fine grained perf tests enough to catch it.
This CL tries to attempt to undo that damage by optimizing various
things that regressed or didn't regress, but could still be
optimized.
Test: Presubmit tests + capture trace during wmRelayout
Bug: 129389526
Change-Id: I352a3213f074377bd10721d16535c1e27fb2e746