Fix some bugs, add the ability to monitor state changes, improve
dumpsys output to help debugging, add a new check API that allows
the caller to get the real state.
Bug: 78480444
Test: atest FrameworksServicesTests:AppOpsServiceTest
Test: atest CtsPermissionTestCases:AppOpsTest
Change-Id: I3d41be9968c1d95a1456f4052da958ea64aa068d
Pass an explicit flag to the runtime when we need to profile the system
server. This ensures that we only start the ProfileSaver and allocate the
code cache when needed.
Test: manual, on a device with system server profiling enabled
Bug: 74081010
(cherry picked from commit 8eb891be6f)
Merged-In: I756682a9644796afb53f0c010d2bd2764ea5a828
Change-Id: I756682a9644796afb53f0c010d2bd2764ea5a828
In minimized mode there is only 1 split snap target compared to regular
portrait that has 30%, 50%, 70% targets. Update the accessibility options
for minimized mode to reflect the correct targets. Also removed the
middle target if there is only 1 split snap target.
Test: using talkback, see custom options on divider handle in minimized
mode
Fixes: 78304300
Change-Id: I8421499616cf0fe503c1f6a081a2151098640a9c
Current limitation is that we cannot distinguish between key events
from Window#injectInputEvent() and key presses from physical devices.
Bug: 79185725
Test: Manually verified with the test app, and Cts
Change-Id: I1c3da4a963238512eec8b57fbc2d825c7436b140
Certain apps use empty sender names, which looks very
broken. Let me do this one last workaround...
Change-Id: I958319d1e4f9387e5e05afb304c05bef55c3e2fb
Fixes: 73139872
Test: receive a message with empty sender, observe visually
Update the logic for system server profiles to work without disabling
SELinux policies.
Test: check that system_server profile is created without disabling
SElinux
Bug: 74081010
Change-Id: I8aa1e57da0f8059bcfb149fe7366d8278b4bf516
Updating a remoteInputHistory message to non-history
was generating a weird animation because we would
not reuse the view if the remoteInputHistory state
changed.
Bug: 77957392
Test: visual, observe normal animations
Change-Id: Iac869159411cc57c90476ef684a05e8547c14aa4
The historic message groups are now also gone,
not just the messages
Change-Id: Ib7a454809425c18f5c2fd5905b3dae9ec5ec846f
Fixes: 72556979
Test: visually, add historic messages, observe group is gone too
This also fixed the paddings for the bigtext layout
by remeasuring it after the initial measure.
Test: runtest systemui
Change-Id: I4b974645606691e6faf2b99b8e52c791e69ee6ea
Fixes: 79111092
A messaging group would still look visible if all of its children
were hidden, which is incorrect. We instead regard it as measured too
small.
Test: add message notification with smart reply, click on smart reply
Change-Id: If5174f95038bf16022d935fd05f337969984f0c2
Fixes: 78214933
Fixes an issue where uncovered regions were not
covered if they are to the right or bottom of the
content view.
Fixes: 78661186
Test: Install test app from bug, enable cuotut, open test app, go to landscape, verify white fallback background is drawn in both landscape and seascape
Test: atest BackgroundFallbackTest
Change-Id: I442f03395a71550a534d64233762aa84002319dd
With the new xt_bpf support for iface stats. We no longer need to parse
the per interface stats from /proc/net/dev. And since the old xt_qtaguid
code path also not depend on it, we can completly remove that helper
function since no caller is depending on it now.
Bug: 72111305
Test: runtest frameworks-net -c com.android.internal.net.NetworkStatsFactoryTest
Change-Id: Icb7eaeef0eeb9fdffd32a90316c76ee05bafffbe
Merged-In: Icb7eaeef0eeb9fdffd32a90316c76ee05bafffbe
(cherry picked from aosp commit b815c978b8)
After adding the xt_bpf module and ifaceStatsMap, eBPF tool can now
support reading per interface data. So networkStatsFactory should move
away from parsing proc/net/dev and use the eBPF map stats instead.
Bug: 72111305
Test: atest com.android.server.net.NetworkStatsServiceTest
Change-Id: Ibcc6150d00835b3bd33af22a72e4a86e172581cf
Merged-In: Ibcc6150d00835b3bd33af22a72e4a86e172581cf
(cherry picked from aosp commit dcc56783f5)
Shuffle around the ordering of resolveInstallVolume() so that we
determine the fitsOnInternal value while doing a drive-by of all
possible target volumes. This way we only call getAllocatableBytes()
internal storage once.
Bug: 70985520
Test: atest android.content.pm.PackageHelperTests
Change-Id: I8273c239af4a13b1db17f320e15ee0ef2dc89186
Because in landscape the width is bigger than the height,
our clipping logic was wrong and clipped off most of the
text.
Test: add messaging style notification, switch to RTL, landscape, observe normal clipping
Change-Id: I8c74a8405280047f8b2a08ecdf3f37b0fbeeec62
Fixes: 73895612
Fixes: 78606052
We thought we could push everyone through sdcardfs, but secondary
devices mounted in a stable location don't give full write access to
apps holding WRITE_EXTERNAL_STORAGE, so system internals still need
to reach behind sdcardfs.
To keep sdcardfs in the loop about changes that we make behind its
back, we issue access(2) calls which should be enough for it to
invalidate any cached details.
Bug: 74132243
Test: manual
Change-Id: I727cd179a5a825b16ec4df6e2f41a079758d41c5
Refactored docked position code into PhoneWindowManager to determine
which side the docked app should go based on the position of the nav bar
in landscape (as portrait will only have top). Fixed the split screen
entrance animation for quick step's overview.
Change-Id: I30f1be9d791c23f4cd197f17487609964f78fac0
Fixes: 73250406
Test: play around with splitscreen and minimized mode
Test: atest com.android.server.policy.PhoneWindowManagerTest
This change makes it possible for apps installed with the DONT_KILL flag
set to obtain access to newly installed native libraries while avoiding
double load of existing native libraries prior to the install when
loaded using System.loadLibrary.
Bug: 72047376
Test: manual - used sample app to verify availability of native libs
Change-Id: I331eaa48da1f8dee424584911317ec3fba92f873
Measure the last action view normally instead of measuring it full width.
Test: enable show layout bounds and check the bounds of it.
Change-Id: I38f234928f7214baf2b532ecae63c3f4514b3247
Fixes: 78032480
DecorContext is created with the resources from the activity. However,
the resources in DecorContext may not get updated properly
ResourcesManager if the original resource object it's pointing to isn't
updated by ResourcesManager. Because of this, resources for the
DecorView can be incorrect when the activity's resources are updated.
This change updates the DecorContext's resources with the activity's
resources when getResources is called to ensure they get properly
updated.
This fixes the issue where windowing mode was incorrect when determining
what the window elevation should be. It was incorrectly getting full
screen when it should have gotten pinned. This was preventing surface
insets from getting set on the WM side, so PIP windows didn't get
shadows.
Change-Id: I5af2364f81b167e3732811d7413554d035c4a021
Test: PIP has shadows
Fixes: 78214575