With Life Tiles in QuickSteps (b/111697218), launcher will
“punch a hole” for TaskView & the app window will be transformed
in it & keep the task is running.
To prevent launcher animates on TaskView without the real app surface
during task switching, launcher start RecentsAnimation to monitor
onStackOrderChanged without cancel animation when swiping to recents.
We use this as signal to screenshot the previous app window when next
app transtion start, make leash with screenshot surface to let it below
homeAnimationLayer, so that launcher can still control the leash,
and then callback onAnimationCanceled with screenshot parameter for
launcher to know if need to call IRecentsAnimation#cleanupScreenshot for
clean up screenshot, to make the next app transtion animation can work
smoothly without flickering.
Bug: 122593881
Test: manual
Test: atest RecentsAnimationControllerTest RecentsAnimationTest
Change-Id: I83504d578a17856623a53c04a7d3c54e5bcab5f4
The CL updates Magnifier#getPosition() and Magnifier#getSourcePosition()
to return coordinates relative to the main application window, rather
than relative to the surface backing it. Working with window relative
coordinates is the better approach for public APIs. The CL also makes
View#getLocationInSurface public. Magnifier CTS tests still need it,
when testing MAX_IN_SURFACE behavior.
Bug: 124012182
Test: atest CtsWidgetTestCases:android.widget.cts.MagnifierTest
Change-Id: I684f27aa466e0390c7801b616331f4682784c423
Adds a facility to listen for per-window exclusion zones and
assembles them into a per-display exclusion zone ready for
consumption by interested parties.
Bug: 126360272
Test: atest DisplayContentTests
Change-Id: Ic186f86ca551af98a5f77beb254d257c281a4160
This CL runs langid on classifyText() and sets the language information
of the classified text in Intent extras that are sent to the destination
app. If the text is too small for langId to detect the text reliably,
include surrounding text as necessary.
Includes flags to tune/disable how sorrounding text is used.
Also fixes failing tests.
Bug: 126453204
Test: atest android.view.textclassifier
Change-Id: I9ef2a33690dc3787f6544ceed0f41c527f4423e5
Move it off of a pure targetSdkVersion check and instead
to an opt-in based off of theme.
Bug: 128683634
Test: force dark tests
Change-Id: I95095a246f3482110b71cd63742db8b955516e50
+ Remove IntEnumMapping class, (use a bound lambda of
SparseArray#get(int) instead).
+ Remove IntFlagMapping.Builder, and make IntFlagMapping mutable. The
immuability guarantees are provided by using a lambda of
IntFlagMapping#get(int).
+ Change PropertyMapper#mapIntEnum(String, int, IntFunction<String>)
and #mapIntFlag(String, int, IntFunction<Set<String>>) to take
IntFunctions instead of semantic types.
+ Changes to the annotation processor to support code generation for the
lambdas and additional internal cleanups.
Bug: 124448834
Test: atest --host view-inspector-annotation-processor-test
Change-Id: I3e7ccac63d50caa6ff49be1e78732831886e7f6e
When RemoteActionTemplate[] is null, it means the intent generator
is not working, we then fallback to legacy intent factory
If RemoteActionTemplate[] is an empty array, it means the intent
generator is run, but no intent is generated.
Also, moved all intent related class to intent/ folder
Test: atest frameworks/base/core/tests/coretests/src/android/view/textclassifier/
Change-Id: I7e4c49dc3ebed4d498ac26f0894d7af85419419e
On Android O, when the autofill service returned null to a fill request we'd close both the
server-side and client-side sessions. The downside is that if new views were dynamically added,
it wouldn't trigger more request (which was problematic on apps using WebView)
On Android P, we changed it so the client-side was marked as FINISHED, but we kept track of which
fields were already focused, so it wouldn't trigger more requests when their were focused again.
Now on Android Q we're optimizing it further so we don't trigger extra requests on any field that
were originally present during the fill request (but we still trigger it for fields added later).
Test: atest CtsAutoFillServiceTestCases:android.autofillservice.cts.LoginActivityTest#testAutoFillNoDatasets_multipleFields_alwaysNull
Test: atest CtsAutoFillServiceTestCases # sanity check
Fixes: 128551128
Change-Id: Iaa203dc415bfd68647f07e8d7be1ce07bb49ffc9
Per API council feedback, we are making changes to include only the
namespace in the system API defined in DeviceConfig.java. Strings which
define property names should be defined in code local to the feature
instead.
Bug: 126411407
Test: atest FrameworksCoreTests:DeviceConfigTest
Change-Id: I73157c127a246719afb37eca65cabf2e3d24b38a
1. Use LangID to detect the language tags, and pass the result to
the native side.
2. Have feature flags to turn off "detectLanguageTagsFromText" and
foreign action for classification respectively.
Test: Select a non-english word, no more "define" action.
Test: atest frameworks/base/core/tests/coretests/src/android/view/textclassifier/
BUG: 123705564
BUG: 128413589
Change-Id: I6a68caca1e0709e63319907acbf8d776894f555b
This is useful for long-lived activities (like a browser), so child session can still be reported
after the service is restarted after dying.
Test: manual verification (cannot be tested using CTS because it would kill the test process)
Test: atest FrameworksCoreTests:android.view.contentcapture.ContentCaptureEventTest
Test: m update-api
Bug: 128466656
Change-Id: I9310263e897e929189d323d31853592a374dc6e0
Added javadoc to make clear that it requires FEATURE_INPUT_METHOD.
Bug: 127840515
Test: atest InputMethodManagerTest#testShowInputMethodPicker
Change-Id: I3dde60ecc538a8fc64ebbf6935830621bf9c6253