When an app trigger autofill, system_server will eventually call back into the
app to lazy load the contents of the AssistStructure used for autofill. If that
binder transaction fails, we should simple ignore it, rather than crash the app.
Test: atest CtsAutoFillServiceTestCases
Test: locally changed code to force WTFs and called 'adb shell dumpsys autofill'
Bug: 72398988
Change-Id: I490ad877b067fb37997b734718b90b00f9d318c8
If the surface gets destroyed, return -1 to indicate such that
the client can abort the animation, instead of crashing.
Test: With Launcher in multi-window
Change-Id: I4ab11557c40ed843a4c2e985a53cc2247b18b5fd
This reverts commit 4365cef6dd.
Reason for revert: Cannot access views by resource-id via uiautomator
Bug: 72271943
Change-Id: I5e07a8c5775aa79df0c240b2133daaf62f6d460b
Adds an option to use dp instead of px when specifying the cutout bounds.
Also centers the coordinate system in the middle, making it easier to specify
the usually centered cutouts.
Also makes the emulated cutout a bit prettier.
Bug: 65689439
Test: adb shell overlay enable com.android.display.cutout.emulation
Change-Id: I3bd16af15f1dad2af204d436abaa35fb9e5ae146
Allowing accessibility services to get the tooltip text
and show and hide tooltips.
Bug: 64836990
Test: Adding CTS tests for new APIs.
Change-Id: I91265594c5ac3ecbc9ae487c7d227a460773f920
Adding the ability to mark TextView as a heading, and
to provide a heading depth. Plumbing that through to
accessibility services.
Bug: 34687453
Test: Adding CTS tests for new APIs.
Change-Id: I5262e32a2a11b2577802c68e701d2856e28abc21
The prepareDrag() call is used by apps to ask the system server to
create a surface for drag shadow. Now the app creates a surface by
itself, thus we can reduce the method.
Bug: 70818582
Test: com.android.server.wm.DragDropControllerTests,
android.server.wm.CrossAppDragAndDropTests,
manually check the drag and drop behavior on test app.
Change-Id: Iae4acbff4f9ad68faa6324beb32bf9a28dcd67be
Previoulsy a drag shadow surface is created in the system process. App needs
to call one more binder call (prepareDrag) to obtain the surface from
the system process.
The CL lets an app to create a drag shadow surface by itself. Then app
transfer the surface to system server by using reparent
API.
Bug: 70818582
Test: com.android.server.wm.DragDropControllerTests,
android.server.wm.CrossAppDragAndDropTests,
manually check the drag and drop behavior on test app.
Change-Id: I72796efffbefe78a802d7c441dea308d1cdea572
Track bounds of an ActivityView and set them as a tap exclude region,
so that taps on this area won't cause a focus switch between
hosting activity and activities inside of ActivityView.
Bug: 63902362
Test: Manual with ActivityView test app
Change-Id: I3cdafe32e0bdf414507fef0d622d9c140eee3188
To make autofill works on non-touch device such as TV, allow
fill ui window to gain window focus. Fill ui window does not
need IME. When IME and fill ui window are both shown, fill ui
window will intercept keyevent before IME.
Since autofill window will steal window focus from app window,
we no longer uses View.onWindowFocused() for enter/exit event.
Switched to use Activity onResume/onPause. When view
notifyViewEntered or notifyViewExited called when Activity is paused,
it will be ignored. Before Activity goes to pause state,
notifyViewExited() is fired on focus view, after Activity leaves
pause state, notifyViewEntered() is fired on focus view.
In CTS testDatasetAuthTwoFieldsUserCancelsFirstAttempt, the
authentication activity finishes itself in onCreate() which will not
produce onPause/onResume in app activity, but it will produce window
focus loss/gain event. Since we switch from window focus to activity
onResume/onPause, we will be missing a show fill ui when return from
the never shown authentication activity. To solve this problem,
we added special code when receive ActivityResult from authentication
activity where we check if the authenticate activity never causes
onStop event, where we should issue an extra ACTION_VIEW_ENTERED
event to show fill ui.
Test: passed all existing autofilltest CTS on sailfish
atest CtsAutoFillServiceTestCases
Bug: 70181616
Change-Id: Iafe4dca3be8f049fa6dfd34bac13ccb030c583b6
This introduces a more stable way of setting a remote animation
than using overridePendingTransition: An activity can register
a set of remote animations which is broke down by transition type.
Whenever the activity is involved into such a transition, the
remote animation will be started.
Remote animations take precedence over regular animations, and
prefixOrderIndex in the hierarchy decides precedence within
multiple apps that set remote animation definitions such that
higher apps override lower apps.
Bug: 64674361
Test: go/wm-smoke
Test: Use with launcher
Change-Id: Id300ff62d9f60966ea2609168f6a02860b3de7af
Adds the ability for another app to control an entire app
transition. It does so by creating an ActivityOptions object that
contains a RemoteAnimationAdapter object that describes how the
animation should be run: Along of some meta-data, this object
contains a callback that gets invoked from WM when the transition
is ready to be started.
Window manager supplies a list of RemoteAnimationApps into the
callback. Each app contains information about the app as well as
the animation leash. The controlling app can modify the leash like
any other surface, including the possibility to synchronize
updating the leash's surface properties with a frame to be drawn
using the Transaction.deferUntil API.
When the animation is done, the app can invoke the finished
callback to get WM out of the animating state, which will also
clean up any closing apps.
We use a timeout of 2000ms such that a buggy controlling app can
not break window manager forever (duration subject to change).
Test: go/wm-smoke
Test: RemoteAnimationControllerTest
Bug: 64674361
Change-Id: I34e0c9a91b28badebac74896f95c6390f1b947ab
Content changes to panes are reported as window
state changes.
Changes to aggregated visibility are also reported
as window state changes.
Window state changes can now have content change
types.
Bug: 37479815
Test: Adding CTS tests in linked CL.
Change-Id: I35ef946398cac869b0f736708cb39ae96ab3ddb7