This patch adjusts the USAP pool refill mechanism so that it is less
disruptive to launching applications. Refill events are now delayed
by several (3) seconds if delaying wouldn't cause the pool to be below
the minimum population size.
This patch also adjusts the process priorities for the USAPs and other
processes spawned from the Zygote so that they behave better in the
context they are spawned in.
Bug: 131362095
Test: booted & launched apps & checked logs
Change-Id: If26d625c4b1e5e8eee54dcdacb32360b0d852829
Merged-In: If26d625c4b1e5e8eee54dcdacb32360b0d852829
(cherry picked from commit b32150024f)
Or the caller could be waiting too long for a request that has already
failed due to remote process crash.
Bug: 132341999
Bug: 126266412
Test: atest CtsAutoFillServiceTestCases CtsContentCaptureServiceTestCases
Change-Id: I014c8657ce247aed47335afb3144d88a0144e422
Also, allow files to be renamed if they are not in pending state and
trigger a media scan when a new file is created.
Bug: 127844893
Bug: 127802924
Test: manual
Change-Id: I162f1827dacc422bfa33c54904e92a4aecb7747d
The following device admin related events now generate interruptive notifications:
1. Admin-triggered remote bug report collections (requires user action)
2. Remote work profile wipe - post wipe notification
3. The enabling of Network logging
4. Admin remotely installs/removes an APK
5. Work profile needs unlocking after boot
Test: manual
Change-Id: If5a51123c05b15e544a31ac7ec6b42ec831a1ccc
Fix: 130623009
Fix: 120770584
Fix: 118810015
We only need to consume if the app may not expect to have insets,
meaning that they set fullscreen but it was denied.
Test: WindowInsetsPolicy
Fixes: 129272201
Change-Id: I6392f2bcb9a510db4c60bc4f071070b45f143dcb
Fallback code for AppPredictionService was causing legacy direct share
targets to be boosted over new shortcut api results.
Bug: 132259015
Test: Manual, via Messages alpha
Change-Id: I7edd94b4de6a235b2326aae7d91a594a5d11afe0
...as otherwise setWindowBackground(bg) => bg == dv.getBackground
property is violated.
Also ensure the setBackground updates mOriginalBackground as well,
such that getBackground doesn't return a stale value.
Test: WindowTest
Test: Open maps
Bug: 130586696
Fixes: 130170137
Change-Id: I22b74ca6d4fd18600645b5d24814a90b8528745c
Log more informative warnings to assist developers in adding an
optional preview section.
Bug: 132152987
Test: Manual
Change-Id: I4a97675315871317591d627cccc79da3f7e89d46
The AVD used to animate loading ds targets is build using a
square with a ds shaped cutout. Ripples on touch that go below
the AVD show a square bounding box. This looks awful, prevent
ripples as clicking the placeholder does nothing anyway.
Fixes: 129979593
Test: visual inspection
Change-Id: Id8734f3d92bd104097a60a6aa411be71db3e4efe
A line was added to set mLastChargeStepLevel to level every time the
battery level changed when the device was plugged in. However, it was
added right before an if block that checked if mLastChargeStepLevel was
not equal to level, which then meant that the if block would never
execute. Moving the setting line below the if block to fix that and
removing redundant lines.
Bug: 111360323
Test: atest com.android.internal.os.BatteryStatsTests
Test: atest CtsJobSchedulerTestCases
Test: atest CtsBatterySavingTestCases
Change-Id: I36f1b05f8d344b4d2432696acbf370d47a769d03
A content observer is registered by default when setting a notification
uri for a Cursor, in order to make the Cursor correctly notify listeners
of all changes to its URI, not just the ones made locally.
This is not required for DocumentCursor, because it already has a
separate mechanism for watching for all changes made to the data backed
by the cursor.
This avoids DocumentProviders having to call into system_server to
answer queries about directory trees, which can otherwise add up to
significant amounts of time for large directory trees. In my tests,
this improves the performance of iterating through a directory by
roughly 20%. This number is likely to be higher on non-test devices,
that probably see more binder contention, and will also depend on the
structure of the file tree.
Bug: 130276310
Test: SAF test app
Change-Id: I386363b0608c420e9847caf6fbf6686641c955e2
Need to make sure we reserve enough height for the 4->8 direct share
expansion to work. Fix the calculation for offseting the sharesheet.
Bug: 129980100
Test: Visual inspection
Change-Id: Iaef245b9b8e2ed1dbacf01107dbafb6bf5016483
Should help reduce the amount of reshuffling due to older
pull-style direct share targets.
Bug: 129980100
Test: Visual inspection
Change-Id: I6bd2dd3da2b4c39ee79edaf92da89f1f79b12f75
With my previous CL [1], CursorAnchorInfo API was globally disabled
for cross-display scenario including ActivityView scenario.
This CL slightly relaxes the above condition so that IMEs can rely on
CursorAnchorInfo APIs again to interact with apps running inside
ActivityView.
The basic idea here is keeping reporting relevant information from
ActivityView to InputMethodManagerService (IMMS) so that IMMS can take
the display hierarchy because of ActivityView into account. As long
as IMMS has the up-to-date hierarchical information, IMMS can tell
InputMethodManager (IMM) running in the IME client process about the
missing coordinate transformation information from the virtual display
space to the outer display space where the IME is actually shown.
Note that there was a similar fix for AccessibilityService that keeps
reporting ActivityView location to WindowManagerService (WMS) [2].
Ideally we should be able to share the logic, but to do so we need to
introduce a generalized callback mechanism into WMS so that IMMS can
be notified when a cetain coordinate transform matrix has changed.
For Q, this CL implements IMMS's own mechanism to keep track of
ActivityView hierarchy instead of introducing a direct dependency from
WMS to IMMS.
For R+, most likely we may want to reconsider how ActivityView should
be implemented.
There should be no behavior change in this CL if ActivityView is not
involved.
[1]: Ie2f7a5117cff3a13ad5c5806fd4b3abef7569549
3d2cc0fffd
[2]: I38da5b84a11890bf0f4a57eb9d5b7e71bdcc16a9
d8ec938609
Fix: 115693908
Test: atest CtsWindowManagerDeviceTestCases:ActivityViewTest#testInputMethod
Change-Id: Id0411a80456182111bb5b681c6d1230b58e7ec2e
There were differences in ripple behavior depending on the list row
background. Modify this so the ripples propogate against the same
parent background. Make copy button style match the work profile style.
Bug: 129979196
Test: Visual inspection
Change-Id: I51f1b7503c2169bd03f04edecf98927850e6582b
Sharesheet in AiAi is currently disabled, so sharesheet will
default to ranker. This will allow remote enabling for experimentation.
Bug:129014961
Test:Manually tested.
Test: atest frameworks/base/core/tests/coretests/src/com/android/internal/app
Change-Id: I0c21c29356120a873940bcaa8a659ea02046be71
The AppPredictionServiceResolverComparator will use the ResolverRankerService
if APS appears to be disabled for share activities (returning empty despite
being given a non-empty target list).
For Direct share targets, if the share target list returned is empty, we fall
back on calling the ShortcutManager directly and relying on ChooserTargetService
to rank.
Bug:129014961
Test:Manually tested.
Test: atest frameworks/base/core/tests/coretests/src/com/android/internal/app
Change-Id: I9891a3a4d879e247b84a651408058153ea57c766
This fix addresses two related issues: one with the
DeviceConfig.onPropertiesChangedListener, and another with
HiddenApiUsageLogger.setHiddenApiAccessLogSampleRates.
In both cases, setting one of the sample rates
(hidden_api_access_log_sampling_rate or
hidden_api_access_statslog_sampling_rate) unsets the other. This is due
to them being sent sequentially instead of simultaneously.
Additionally, out of an abundance of caution, mirror the behaviour in
attemptConnectionToPrimaryZygote and attemptConnectionToSecondaryZygote
for the statslog sample rate. This was overlooked in a previous change.
Bug: 119217680
Test: m
Test: cts-tradefed run cts-dev -m CtsStatsdHostTestCases -t \
android.cts.statsd.atom.UidAtomTests#testHiddenApiUsed
Change-Id: I8a5534403269a2339fcabc8f847199ab837ae71b