- This is for testing purpose.
Bug: 193247516
Test: build, check boot up
Change-Id: I6c6d860a4b884d8856ede3aa4c73c64a9c568dd5
Merged-In: I6c6d860a4b884d8856ede3aa4c73c64a9c568dd5
(cherry picked from commit d8a331bdcb)
TaskFragment can be empty for either 1. wait for new launch activity, or
2. last activity just removed.
For 1, we want to wait for the activity launch.
For 2, we want to wait for organizer to remove the TaskFragment.
Bug: 196173550
Test: atest WmTests:AppTransitionControllerTest
#testTransitionGoodToGoForTaskFragments
Change-Id: I73ac239ef2e5a75d05af6f6ae97e3f2278ebb4c3
Query the surface flinger property
ro.surface_flinger.primary_display_orientation to determine the
primary display's install orientation. If the window is on the
primary display, then update the transform hint passed on to the
client.
Bug: 196167822
Test: check initial buffer transforms on displays with a different
install orientation
Change-Id: Idf010cd6be73172ba708820f87046c3ba3cf8001
In shell transitions, recents opens on top, but in transient mode
(meaning it doesn't cause the other apps to pause). This means the
other apps should be running un-interrupted. This includes not
taking the IME away.
To handle this, adjust the IME logic so that transient-launching
activities are NOT canBeImeTarget.
Also fix a bug in isVisibleOrAdding where it was using
visibleRequested instead of visible (if you look at the change
history, !hiddenRequested was incorrectly replaced by
visibleRequested instead of visible).
Also fix a bug where a defer/continue of updateImeTarget was
updating the target even when an update was never requested while
it was deferred. This was causing it to be called prematurely
during activitystarter (where global lock is held).
Bug: 193565597
Test: atest ReOpenImeWindowTest SwitchImeWindowsFromGestureNavTest
Change-Id: Ic537d77c8b0e10e80444dd46d7b49e5a9bd63d6c
Adds the USE_CAR_TELEMETRY_SERVICE permission to the allowlist.
This permission is needed for CarTelemetryManagerTest to pass. Otherwise
there will be a security exception whenever the CarTelemetryManager API
is invoked.
Bug: 198309792
Test: atest CarServiceTest:CarTelemetryManagerTest in ag/15752577
Change-Id: I4f95c71f0d9c1891f600e83f7f90f33144300a5c
An app may pass a null surface to MediaProjection#createVirtualDisplay,
and later set the surface on the VirtualDisplay. The display's state
will change from off to on when the surface is set.
When determining if layer mirroring should be started/updated in
DisplayContent, take the presence of the surface/display state
into account, to prevent the app from crashing.
Bug: 197863746
Test: atest WmTests:DisplayContentTests
Change-Id: I01af07fff681aab6fc8235c861375eb79118cbfe
- Add WM_DEBUG_WINDOW_INSETS ProtoLogGroup to use for logging
general Insets logs in WM core.
- Refine InsetsSourceProvider#updateVisibility proto log format
to add insets type information.
- Add InsetsSurceControl#toString to print control target info.
Bug: 197189357
Test: adb shell wm logging enable-text WM_DEBUG_WINDOW_INSETS
Test: atest ProtoLogImplTest \
ProtoLogViewerConfigReaderTest \
WmTests:ProtoLogIntegrationTest \
LogDataTypeTest \
protologtool-tests
Change-Id: I1f01ce4d9fe5cb17f7bd60a424689260682b1dfc
When all windows in the transition is belong to organized TaskFragments,
have the TaskFragmentOrganizer to control the animation on client side.
Bug: 196173550
Test: atest WmTests:TaskFragmentOrganizerControllerTest
Test: atest WmTests:AppTransitionControllerTest
Change-Id: I835467e23863286a5bd34380424cc9eca2c7372f
When intercepting an activity start request, a new split pair
was always created and launch the activity to the side of the
caller activity.
This CL launches the activity on top of the caller activity
if the caller activity is already on the secondary container.
This is needed for the case that the activity is started
into a new Task, or new Task will be escaped from the current
host Task and be displayed in fullscreen.
However, the interception won't work if the activity is started
from another process.
Also adding logs for TaskFragment errors.
Bug: 194997356
Test: manually, start activity with sample app
Change-Id: I268c1dad191cdfdbf48cac84e18f1dfda761b0d3
Before, even if the launcher was not launched, RecentsAnimation would
start the activity in background as invisible. It would cause issue
because ensureVisibility would make it visible because there is no
opaque activity on top, while that may not be collected in any app
transition.
Now, in case the recents activity should be visible, we ignore the
preload recents activity.
Bug: 193565751
Test: pass failed launcher test
Change-Id: I93f5a716177bcbf69f5e4d5915826bd9f61f53a4
This tracks ready state in groups. Currently the groups are
display-contents (to match legacy transitions). The transition
will be considered ready when all groups are ready.
This also adds a couple of inTransition checks in places that
are used by CTS tests.
Bug: 183993924
Test: atest MultiDisplaySystemDecorationTests
Change-Id: Iea81b3c689d948d60aa8e1a2d3bf168723058a2f
Security report shows that this can cause leak token of different app.
Replace the functionality with a callback to the TaskOrganizerController
to restart activity when size compat restart button is clicked.
Bug: 186776724
Test: manually verify the restart button still works
Change-Id: I097b9f02e8435e6765695b9d5a531a4e165bac66
Merged-In: I097b9f02e8435e6765695b9d5a531a4e165bac66
The focused window was determined by looking up the focusable windows
from top to bottom.
In order to switch the focus between the embedded activities in the
same leaf Task without reordering the position of the activities, the
focused app can also be updated based on the window that user was
touched, and the focusable windows that were on other TaskFragment
in the same Task cannot be focused.
Bug: 189385926
Test: changing focused app by touching embedded activity
Change-Id: Id84461572cc768f474ffa313da1c10ff4010408e
Security report shows that this can cause leak token of different app.
Replace the functionality with a callback to the TaskOrganizerController
to restart activity when size compat restart button is clicked.
Bug: 186776724
Test: manually verify the restart button still works
Change-Id: I097b9f02e8435e6765695b9d5a531a4e165bac66
This is required for GTS testing it, rather than having to instrument
GMS Core.
Bug: 182271592
Test: tested as part of other CLs in this topic
Change-Id: Id56e0d206afe0a9069d1510a3dae9a07141fff60
This keylayout was introduced in ba81efe04a.
Unfortunately, we cannot match by vid / pid, since this breaks other
devices (like keyboards) that use the same vendor / product id.
Instead, match by name to avoid conflict.
Bug: 191720859
Change-Id: I9dd686ebcd612ca04d41b7b5cadf8442350346c9
Merged-In: I9dd686ebcd612ca04d41b7b5cadf8442350346c9
Test: verified manually
Allowing a leaf Task to both contains ActivityRecord and
TaskFragment as the direct children.
For example:
Task
- TaskFragment
- Activity C
- TaskFragment
- Activity B
- Activity A
Bug: 189385903
Test: wm presubmit
Change-Id: I79667df70dcbbefbf5a5cce1a24165247f403e69
This is required in order to build ClusterHomeSample with CAR_MONITOR_INPUT privileged permission.
Bug: 186676333
Test: atest CarServiceUnitTest
Change-Id: Ie5c81beb142c8f02aa01bdf129320169eed2c00e