Bug: 150910582
Test: Compiled bertha_x86_64-userdebug (Chrome OS ARCVM image) for
rvc-dev, flashed eve-arcvm (Pixelbook), connected TouchVpn App, observed
that ARC's VpnTracker does not crash the system server when printing
VpnConfig objects with no ProxyInfo.
Change-Id: I3f8dd1d232e2b18dae9e99eb05c92a797a2358b9
1. Add the dialog title
2. Change font family and size for label
3. Move functions into the corresponding files
Bug: 148825350
Test: manual test
Change-Id: Id8858122714cc0b063a7562c5a99218efb1766f7
This reverts commit 920105c38b.
Reason for revert: The real reason for the robolectric freeze has been found
Bug: 150011638#comment55
Bug: 150763929
Change-Id: Ib59acf362e87fa907902e19bac6e3b16cafa77d4
This covers the usecase when we show the share sheet or
intent resolver on a device with a work profile, and
the work profile is turned off. In that case, when
sharing from the personal profile, we show an empty
state screen with the option to turn on the work profile.
When we tap that button, we now show a spinner, as there
is a delay until the profile is actually enabled.
Fixes: 149821684
Test: manual
Change-Id: Id90b21a61b10ecce8172bddc42fdeec5fb61c5fe
This CL does the following things:
- Add an isIntentResolver check for cases when we want
logic to only apply to ResolverActivity, but not
ChooserActivity.
- Gracefully handle the sticky content preview loading.
Preload it if it will ever be shown, in order to avoid
sudden changes in the share sheet height.
- Don't recalculate the share sheet height when changing
tabs.
- Recalculate the share sheet height if the number
of recycler view children has changed in the cases
when we last calculated it when it wasn't populated yet
Test: manual
Bug: 149817068
Bug: 148156663
Bug: 149823253
Bug: 149732754
Change-Id: If74fc36bd3b8bfa5aa1d91c042fa99e4d19899c9
Throw an exception if someone tries to add an
override for a logging only change. Incorporate the restriction in the
OverrideValidator.
Test: change one change to be logging only, flash device, adb shell
dumpsys platform_compat
Test: atest com.android.server.compat.CompatConfigTest
Test: atest com.android.server.compat.OverrideValidatorImplTest
Bug: 148009004
Change-Id: I379c63f8b5c54500d9066be9363a186efd55d200
Provide a recording insets controller before the window gets
created, and replay the commands once a view gets attached. This
allows the client to use the controller in Activity.onCreate.
Test: WindowInsetsControllerTests
Bug: 118118435
Change-Id: I1a825ecc4367c02b27f2d08cd5442325315d4f89
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
* autofill will cache the inline suggestions response until it receives
a start input view event from IME
* the data flow from IMS point of view is:
IMS#startViews and IMS#doStartInput (before calling onStartInputView)
->
[async] InlineSuggestionsRequestCallback#onInputMethodStartInputView()
--- process boundary ---
->
IMMS.InlineSuggestionsRequestCallbackDecorator
#onInputMethodStartInputView()
->
InlineSuggestionSession.InlineSuggestionsRequestCallbackImpl
#onInputMethodStartInputView()
* similar data flow for IMS#finishViews()
* this CL should not block IME's UI thread because it's only issuing a
new async IPC from IMS start/finish input view call that's running on
the UI thread.
* there should not be performance impact on IMEs if autofill inline
integration is not active
Test: manual verification, atest EditorInfoTest
Test: atest android.autofillservice.cts.inline, with two failing cases:
InlineAugmentedLoginActivityTest#testAugmentedAutoFill_twoDatasetThenFilledSecond
and InlineAugmentedLoginActivityTest#testAugmentedAutoFill_oneDatasetThenFilled
due to the test itself being broken, I'll fix the test in a separate patch
Bug: 149522488
Bug: 149442582
Change-Id: I2faa3577b9f95a122f26a6d7fa7822a769a51e34
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
We were previously using a secure setting, which means that the
suppression state would be persisted across reboots.
Test: atest SystemUITests, atest FrameworksServicesTests:PowerManagerServiceTest
Change-Id: I3016bdabc67c15b8759a78ce92f4d9262b1380a3
Bug: 147587449
(cherry picked from commit 05f9538c2e)
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
For the initial pass, everything was interned to take a
conservative approach.
But the time needed to intern every string has caused a significant
fixed cost every time the package is read from cache at boot.
This manually checks each string and removes interning from those
that are generally unique or don't have a significant benefit to
being interned.
Bug: 135203078
Bug: 141922546
Test: atest AndroidPackageParsingEquivalenceTest
Test: atest ScanTests
Test: atest PackageParserTest
Test: manual verify with PackageParsingPerfTest; see bug
Change-Id: I815bb92ec29d2ca38e8614d44937bc738599be55