This change adds the ability of enabling and disabling all allowed
changes for a given package and target sdk through adb.
Bug: 149980515
Test: adb shell am enable-all 28 foo.bar && \
adb shell dumpsys platform_compat
Test: adb shell am disable-all 28 foo.bar && \
adb shell dumpsys platform_compat
Test: atest CompatConfigTest
Merged-In: Ia84d8e1162ea0b3f4c6afe87e63db56256236940
Change-Id: I4696e13882b1b2c930731e6e7787924e20da1a46
Commit ag/9740370 caused problem with robotests b/149806146
The fix ag/10373855 froze targets like run_host_tests
This revert will unfreeze run_host_tests but robotests will break
Bug: 150011638
Test: m RunSettingsRoboTests0
Change-Id: Ibe954e9d0dc1542477ba7156da5799479631cfb0
When an overlay is not specified as immutable through OverlayConfig,
enabling the overlay using the OverlayConfig `enable` attribute makes
the overlay enabled by default.
When an overlay is scanned by the OverlayManagerService for the first
time, the default-enabled state will be applied to the overlay. If the
configured default-enabled state changes in a subsequent boot, the
default-enabled state will not be applied to the overlay.
This means OTAs cannot change a mutable overlay from default-enabled
to default-disabled (or vice-versa) and except the configured enabled
state to take effect.
When the device is factory reset, then the configured enabled state
will be applied. If a package is removed from the device in one OTA
and added back to the device in a future OTA, the configured enabled
state will be applied. If an overlay changes its target package or
target overlayable, then the configured enabled state will be applied.
If an immutable overlay becomes mutable, then the configured enabled
state will be applied.
Bug: 149499802
Test: atest OverlayManagerServiceImplRebootTests
Change-Id: I24f86591ac811ef2b836da36ef5574a82628b151
The InlineContentView uses the SurfacePackage instead of the SurfaceControl
for accessibility and UiAutomation supporting.
Bug: 149194105
Test: manual
Change-Id: Ib10f37a58dde7dc09d0ea16d1a121088dab4738e
* Pipe the augmented autofill's inline actions through to the
InlineSuggestionsResponse
* Do not send the inline action if the number of inline suggestions is
zero
* Refactor autofill inline suggstion session so that all the calls to
the IME has happens within the class
* Send an empty response to IME to hide the inline suggestion UI when
view exits and the previous response wasn't empty
Test: manual verification, atest InlineLoginActivityTest
Bug: 149522488
Bug: 150312201
Change-Id: I7a0dbf44e9fad6e7da857448c0f2b186e1681d17
This CL makes the following changes:
- We update ResolverViewPager to wrap around
the tallest of its children. We can do that now
thanks to recent changes that load the inactive
tab.
- Place empty state screens at the top of the
tab content and update padding and text sizes
- Use layout_alwaysShow=true instead of trying
to calculate the proper height for the different
layout cases (with/without tabs, with/without
default app layout).
Test: manual
Bug: 149823158
Bug: 149822719
Bug: 149823253
Bug: 149817311
Bug: 148156663
Bug: 149824092
Change-Id: I81f9e8600e59b74c64584723054d309becf34f12
Experimenting with moving this logging to the SysUI side to be able to
log the complete panel, including any lifetime-extended items.
Test: atest NotificiationLoggerTest SystemUITests
Test: statsd_testdrive 245
Test: adb shell cmd stats print-logs && adb logcat -s statsd:I | grep ' (245)'
Bug: 146488473
Change-Id: I0a1a1ddd8838c002807e7137477175f0acceba98
Fixes an issue where PhoneWindow and thus Activity can be leaked through AttachInfo through
the OnContentApplyWindowInsetsListener.
Fixes: 148799801
Test: make droid; atest WindowTest
Change-Id: I1de5518c84fd7e6d1aa1542a9252b1c600f5712d
Pipe the windowToken of the window requesting hideSoftInput just like we
did it for showSoftInput [1].
This calls hideInsets on the correct display when control target is
different from IME target e.g. ActivityView.
Also hideInsets should be called on InsetsControlTarget instead which was
originally attempted in [2]
[1]: Ia49e23dd077d264a58d28a7b8acffde54b7db187
[2]: I7133e151a1037c42b275b97857936437a7a6725f
Bug: 149870112
Bug: 133381284
Test: Manually using steps mentioned in bug.
Change-Id: Ia596a392eb73ae46debd097151c8c9a7edd59833
This fixes the boot loop when zygote tries
to log to statsd during boot time.
Linking libstatssocket statically from two different places
causes translation errors resulting in multiple instances of the
same struct being created. This meant that the struct is no longer
shared across the same process for opening/closing of the socket.
Bug: 149889582
Test: Phone boots
Change-Id: Ibfa25c0fe7874ba08157a5ec43601c5cf8305723
When IME is no longer shown, notify IMS to hide the window surface.
This reclaims the memory allocated to IME window surface.
Fix: 150163310
Test: atest CtsInputMethodTests
Manually:
1. Open any app that has editor and run
adb shell dumpsys SurfaceFlinger | grep Total
2. Note down total memory
3. Tap on editor and IME shows. Note down memory
using command in #1. It should go up by ~27MB
4. Hide IME and note down memory again.
It should revert to original value in #1.
Change-Id: I6c2a13dd40b22d3fd62b4763ba369992e5ff1138
Protobufs make it easy to confuse default and unset values.
Test: atest NotificationManagerServiceTest
Fixes: 149760215
Change-Id: Ia27f33cb8331960369f86e75ac3cfa148dad887a
Previous implementation relied on client to pass a token which the
service used to verify if it was the active service. This is seen to be
a security concern as there is no way to verify how the client obtained
the token. Instead, a check is done to confirm the caller's UID matches
the UID of the active service.
In the case of voice model enrollment, KeyphraseEnrollmentInfo class is
leveraged. A client is allowed to enroll if it is the active voice
interaction service or if it is a voice model enrollment application
bundled with the system image.
All previous manifest permision checks still apply.
Bug: 148159858
Test: gts-tradefed run gts-dev -m GtsAssistIntentTestCases -t \
com.google.android.assist.gts.KeyphraseModelManagerTest \
\#testShouldEnrollOnlyWhenActiveService
Merged-In: Ie2c4653d365770a9123a22bc69822518b4ccc568
Change-Id: Ie2c4653d365770a9123a22bc69822518b4ccc568
(cherry picked from commit c6f4118f9e)
This helps us know if jobs with a particular constraint are being
starved or otherwise dysfunctional due to a bug.
Test: make statsd_testdrive &&
./out/host/linux-x86/bin/statsd_testdrive 8
Sample output:
atom {
scheduled_job_state_changed {
attribution_node {
uid: 10224
tag: ""
}
job_name: "android.jobscheduler.cts.jobtestapp/.TestJobService"
state: SCHEDULED
stop_reason: STOP_REASON_CANCELLED
standby_bucket: RESTRICTED
job_id: 691
has_charging_constraint: true
has_battery_not_low_constraint: true
has_storage_not_low_constraint: false
has_timing_delay_constraint: false
has_deadline_constraint: true
has_idle_constraint: true
has_connectivity_constraint: true
has_content_trigger_constraint: false
}
Bug: 138239687
Change-Id: I175e5a0f5cc2cb3be447ccb58142006946092e75
TTS engine might fetch data over the network or prepare data when
binding tts service at first time after boot that may take a few
seconds. Because the dialog is shown only once and on-demand for
enableing accessibility shortcut, it's unable to speak successfully
unless others have bound tts ahead of time.
Bug: 139887992
Test: 1. adb shell settings delete secure accessibility_shortcut_dialog_shown
2. manual reboot, long press both vol keys and tts speaks
Test: Add 2nd user and long press both vol keys and tts speaks
Test: atest AccessibilityShortcutControllerTest
Change-Id: I6290f0a64d1a51aa46f13e7d88a15a096ddb0fdc
Merged-In: I6290f0a64d1a51aa46f13e7d88a15a096ddb0fdc
Non-activity context can be passed to DecorContext, so an exception
can be thrown when Context#getDisplay() call does verification.
An example is that a free dialog uses Application context as its context.
Bug: 149928768
Test: manual: test crashed apps reported in bugs before/after this patch.
Change-Id: Ib302c23cb8e2e388e7468f37f1b63b83ef52ef0e
Revert submission 10338939
Reason for revert: The feature was punted out of R.
Reverted Changes:
I32c12702c:[NS D04] Implement a simple speed comparison betwe...
I688593cc0:[NS D03] Migrate the bad wifi avoidance policy
Change-Id: I640635a1ed94bed3b53466abe2a988caf0eca2b0
The AssetManager constructor is marked UnsupportedAppUsage and the
recent changes to OverlayConfig caused an exception to be thrown when
the function is not called from the root process.
Previously a warning message would be logged indicating that no static
overlays would be loaded. Removing the uid check will restore the
previous behavior.
Also remove the system uid checks for initializeSystemInstance so PMS
service can also be constructed during testing.
Bug: 149806146
Test: invoke new AssetManager() from non-root thread
Change-Id: I55af2cddeba4df7a99c281c93e0181b9e2139139
For procstats aggregated stats collection, we need to expose the
aggregated ProcessStats object back to the caller.
Change-Id: Ifb52f813d679e3e0a1e061f983d8b4f539d6d72a
Test: nothing yet