user's actual state might have changed by the time the broadcast is
received, so added a null check.
Bug: 237413499
Test: atest HandlerThreadingDomainTest LocationTimeZoneProviderControllerTest LocationTimeZoneProviderTest ZoneInfoDbTimeZoneProviderEventPreProcessorTest
Change-Id: I79087a3e83a51b81568bdb6ff5540ee78b51b91a
Merged-In: Ieacbb35e522b35353c96de1f162a8a71388b4b04
(cherry pick from commit 799c6528f5)
We're defining a new compat framework change id that restricts
the other aspect ratio overrides for devices in portrait fullscreen.
Fix: 218959984
Test: As manual testing use 'adb shell am compat disable/enable OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN <package-name>'. For the unit tests run 'atest WmTests:SizeCompatTests'.
Change-Id: I84eaab4df045c93fb2c159a789852094caf9121a
Merged-In: I84eaab4df045c93fb2c159a789852094caf9121a
The ArrayEquals, ArrayHashCode, ArrayToString, and
ArraysAsListPrimitiveArray errorprone findings were
demoted from errors to warnings. Fix existing
occurrences of them so they can be made errors again.
Bug: 242630963
Test: RUN_ERROR_PRONE=true m javac-check
Change-Id: Ia6f216cc36ad0a5758f39fd9b34962cd4adf9d8e
We're defining a new compat framework change id that indicates whether a
given app should use the split screen aspect ratio.
Test: As manual testing use 'adb shell am compat disable/enable 208648326 <package-name>'. For the unit tests run 'atest WmTests:SizeCompatTests'.
Fixes: 208648326
Change-Id: I0232d6d98b10e546b840c08ffbf6e7be9c465965
Merged-In: I0232d6d98b10e546b840c08ffbf6e7be9c465965
The client computes the window frame on its own in ViewRootImpl#setView.
However, the bounds obtained from WindowConfiguration is not size-
compatible, which makes legacy apps produce wrong frames. The frame is
larger than expected, so when computing WindowInsets with size-
compatible InsetsState, the window cannot receive insets.
Although the client will receive the correct window frame from relayout,
but the first WindowInsets has been dispatched before that.
This CL sends the size-compat scale to the client, so the client can use
the correct WindowConfiguration to compute frames.
This is also a step to enable the client to perform local window layout.
Bug: 237749017
Bug: 161810301
Bug: 175861127
Test: atest StartingSurfaceDrawerTests WindowAddRemovePerfTest
ActivityRecordTests WindowManagerServiceTests
Change-Id: I6b23901f4b1f009444c04da7e078ea971a386ad7
The code that assigned target to min if min was not specified was
only checking for min codenames, but if the manifest specified a
numerical minSdkVersion, that is valid and would incorrectly prevent
the package from installing.
Bug: 237059024
Test: mts-tradefed > mts-eng-only -m ApkInApexTest
Change-Id: I3a2b9baa82ebb8ca9031c9fa128ce12bff17226e
(cherry picked from commit bcf5b69c41)
Merged-In: I3a2b9baa82ebb8ca9031c9fa128ce12bff17226e
Bug: 216731966
Test: Compile and Test
Cherry-picked from tm-dev
Merged-In: Ic8e9c2db0743738b2b6649451c79a559c3b8edc5
Change-Id: Ic8e9c2db0743738b2b6649451c79a559c3b8edc5
The code that assigned target to min if min was not specified was
only checking for min codenames, but if the manifest specified a
numerical minSdkVersion, that is valid and would incorrectly prevent
the package from installing.
Bug: 237059024
Test: mts-tradefed > mts-eng-only -m ApkInApexTest
Change-Id: I3a2b9baa82ebb8ca9031c9fa128ce12bff17226e
The attached frame is the frame of the parent window that its child
attaches to, as long as the child is not
TYPE_APPLICATION_ATTACHED_DIALOG. It is a factor while computing the
window frame.
Previously, we let the child obtain the attached frame from its parent
view root. However, if the parent and the child are not in the same
process, it can be tricky.
This CL sends the attached frame from the server to the client via
ClientWindowFrames. In this way, the child can compute its window frame
without having to accessing the parent view root.
Bug: 161810301
Bug: 175861127
Test: atest ActivityRecordTests WindowLayoutTests
Change-Id: Ia844a4c927027e305a56114216eaee2bf7933b1f
In cases when a parsed APK is built with a pre-release platform
(e.g. Tiramisu for 33) our generic parsing code may not fail, as
it is called for user packages as well, and a single bad package
may disable the whole device.
Bug: 233398506
Test: presubmits
Change-Id: I7f93176efceac94b0768d0e4d5be1c28ccce23e3
This reverts commit 47a70c8253.
Reason for revert: time to get rid of the hack
Change-Id: I64b0cd74a124f68d8b72fcc6686634cc43989603
Bug: 233398506
Test: presubmits
There's a lot of issue about embed failure from 1P apps.
Usually, it's because the Activity is going to launch on a new Task,
which is not allowed to embed.
This Cl tries to improve the logging to make 1P developers know how
to fix the embed failure.
fixes: 234414942
Test: presubmit
Change-Id: Id0ea961997afdec2b4f7d49c56f76e9ffc2f0360
Commit I47d6f86fd159aa993971366ee9d7d334644d391e changed how bindServiceAsUser behaves with INTERACT_ACROSS_USERS. This was a change in T, but the documentation accidentally referred to S. So we fix that.
Bug: 209989958
Change-Id: Ib8f614bfa4ae1b4333c56dec3e6cae731e4137ee
Test: N/A