This is a step to move the layout logic to the client side. We won't
invoke IWindowSession#relayout then.
Bug: 161810301
Test: atest WmTests
Change-Id: Ib5ac048a573907af0a81f3e228575d9458862cfd
This is a step to move the layout logic to the client side. We won't
invoke IWindowSession#relayout then, and the client should be able to
set the transform hint on its own.
Bug: 161810301
Test: presubmit
Change-Id: Ib12a76fcc9906b3d9c487fb89bbe4520c682379a
Previously the SurfaceControlFpsListener is a hidden API which only
allows platform code access. This patch renames it to follow the
callback convention and raises it to be a system API in order to allow
system applications to access the FPS count of a task and its children.
The FPS count access is guarded by a permission ACCESS_FPS_COUNTER.
To follow the API convention and properly check the permission, the
register/unregister callback APIs are moved to WindowManager and
permission check is done in the System Server.
Minor: Rename to SurfaceControlFpsCallback to TaskFpsCallback in order
to follow the API naming convention.
Bug: b/199920468
CTS-Coverage-Bug: b/199920468
Test: atest TaskFpsCallbackTest
Change-Id: I6b0a0ad6500278b3da09059e9c2ede28d9a743aa
We currently queue applySyncTransaction in WM Shell, but it doesn't sync
with Shell transition collection. However, when both happen, it may
cause issue because the BLASTSyncEngine currently only support 1 sync at
a time.
Move the Shell transition queue to WindowOrganizerController as we only
queue organizer sync. Unfortunately, unlike organizer sync that is in
one WCT, we can't prevent any core-initiated transition.
We don't expect it to happen, but if it does, we need to handle them
case by case.
Fix: 213866869
Test: atest WMShellFlickerTests:ExpandBubbleScreen
Change-Id: Ida331585b018e848e2f801da55cb6a4b999950f4
Shell Transitions only supports 1 transition collecting at a time.
This limitation comes from BLASTSyncEngine. However, because Shell
can call startTransition at any time (and doesn't have a way to
know if WM is already "collecting" for a transition), we can't
just crash in this case. We also can't just use the existing
transition because it has a different "client" expecting results.
So, the best we can do is queue them up. Fortunately, the
startTransition API Shell uses is designed such that all the
relevant operations are in one WCT, so we can maintain server-side
correctness.
This CL adds a queueing mechanism for these situations. In practice,
this should actually never be needed; however, it is *technically*
possible and automated tests are more likely to hit it.
Bug: 183993924
Test: pass existing
Change-Id: I255fb336cb30c7d1e1b82188a31f9c693b9e138c
The Game Dashboard needs to access the active game mode and the
available game modes of a given game in order to provide the UX. Instead
of doing two queries with two binder calls, implement a new API to
capture all GameMode related states of a given package.
Minor: Don't return UNSUPPORTED when querying available game modes,
change MANAGE_GAME_MODE permission to allow system apps to access the
APIs.
Bug: b/199920468
Test: atest GameManagerServiceTests
Test: atest GameManagerTests
Change-Id: I45d9c2df5bffd6496f97140e44d0ca5afeee71b1
This CL introduces the BackNavigationController that gathers the
required data to be passed to WMShell to create the back animation
These data are passed via the BackNavigationInfo Parcelable.
The CL also containes a basic screenshoting mechanism as a temporary
solution until a proper screenshoting infrastructure is created
(b/207481538).
Test: atest BackNavigationControllerTests
Bug: 131727607
Change-Id: Ibd7fc78e590794daf35f7718ddfa53e7f439813b
Revert submission 16468379
Reason for revert: Feature development is moving to T.
Reverted Changes:
Id9b9a8930:[3/n] Camera Compat UI: Add a camera compat contro...
Id6be4a954:Enable a camera app compat control on Large screen...
I083aa6718:[2/n] Camera Compat UI: Add interfaces for client-...
Bug: 206602997
Change-Id: I9ad876043fd61f708a8f468fffd1ef371bfa0866
Only for use by SafetyCenter (PermissionController), and shell for CTS
tests.
Test: atest CtsSafetyCenterTestCases
Bug: 203205376
Ignore-AOSP-First: Not announced yet, and permission hasn't been merged
in AOSP
Change-Id: I0f2ac01a0fc340b48d30b3e2006c2726a88c52a9
Fixes: 213574164
Test: none
Ignore-AOSP-First: This new permission is part of a T-targeting feature
Change-Id: I9deebbb9721232ba29cbc5a8267a240761a2bc82
These are not yet used, and are obsolete now because We will no longer
be shipping SLS in T.
Ignore-AOSP-First: tied to launch of new upcoming hardware.
Test: atest FrameworksMockingServicesTests:CommunalManagerServiceTest
Bug: 206054365
Change-Id: I51ffbfe5ddc89008d660fab7cfd5808cb827d300
Currently only states supported for body sensor permissions are allow
and deny. This change adds support for allowing the permission only
while the app is in foreground by adding a new permission only for
background. This structure is similar to the current state for location
permissions.
BYPASS_INCLUSIVE_LANGUAGE_REASON=Referring to an existing method failing
the inclusive language check.
Test: Manual atest
Change-Id: I8fcab6c0c884b79291586f64fd221e40982bc4c5
Bug: 208305481
Also giving it to the Shell for Cts purposes.
Test: atest CtsSafetyCenterTestCases
Bug: 208421513
Ignore-AOSP-First: Not announced yet, and need to use a permission
that hasn't been merged in AOSP
Change-Id: I2c63c54efac0add7c412fa43b77fa18ba2e486c3
Changes:
- Listens to changes from the client coming through IActivityClientController#requestCompatCameraControl to ActivityRecord#updateCameraCompatState
- ActivityRecord#updateCameraCompatState sends updated state via TaskInfo to WM Shell
- ITaskOrganizerController#updateCameraCompatControlState to dispatch the user interactions with the control from WM Shell triggers callback to ActivityRecord#updateCameraCompatStateFromUser
- ActivityRecord#updateCameraCompatStateFromUser remembers the user's choice and asks client to apply treatment through ICompatCameraControlCallback
Feature is guarded with config_isCameraCompatControlForStretchedIssuesEnabled
Test: atest WMShellUnitTests:ShellTaskOrganizerTests, atest WmTests:ActivityRecordTests
Bug: 206602997
Change-Id: I083aa6718bd67456bedd9444e9b78740c041f870
REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION permission is
"internal|role", which means that allowlisting it does not have any
effect.
Bug: 195590028
Bug: 203459457
Test: atest CtsCompanionDevicesTestCases:DeviceProfilesTest
Change-Id: Ie9f919938e0e4c57efa3dc8ae66ddfe319215392
Certain top activities will not trigger the "onTaskMovedToFront"
callback which can result in incorrect resizeability
queries. This can happen when a new activity is launched in the top
task.
To avoid this, retrieve the necessary information via the reported
recent tasks by activity manager for a given user id.
Bug: 203044281
Test: Manual using camera application
Change-Id: I61efd4282a2231e6354e5514fc25d7d27005335b