We tried to resume key dispatching for an activity after we destroyed
it and removed its container which led to an NPE.
We now resume key dispatching for an activity if it is currently paused
just before we remove its container to not leave WM in a bad state and
also avoid NPE later on.
Change-Id: I89d366c8667e621f4515df802c6b8278fa4bd322
Fixes: 34808323
Test: adb shell monkey -p ...
Mentioned that in the documentation, cleaned up the code
a bit and added unit tests
Bug: 34614754
Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Change-Id: I91232bbe494398015094ab977c6a2adce339811f
And move references to the deprecated fields to
NotificationRecord for testability.
Test: runtest systemui-notification
Change-Id: If3910dc78297ad66679b1efa380315127261a018
Reverts functional parts of commit 853304c0b1
This lives in a TaskStackListener now, so we just start the prompt for
activity stacks that need it, not for the whole device at once.
Bug: 31001762
Test: make -j20 && Boot, `adb shell service call trust 6 i32 {userid} i32 1`, resize docked stack.
Change-Id: I58be5174e10779f01149de1cd5c2a4db00b98490
Using a WebView package targeting a release before O as WebView provider
on O will cause crashes (because of incompatibility issues), this CL
makes us interpret a package targeting a pre-O release as being invalid
on O.
Also remove the code that lets us fall back to loading the old
WebViewChromiumFactoryProvider (pre-O) class.
Bug: 34773740
Bug: 34180497
Test: Ensure WebView provider with targetSdkVersion="O" shows up in the
WebView Implementation Dev Setting, ensure targetSdkVersion=25 doesn't
show up.
Test: Add WVUS unit test to ensure a packages with targetSdkVersion < 26
are considered invalid, and > 26 are valid. Run WVUS unit tests.
Change-Id: I4d80d46019e2522bc3fc6068712d28eedb31fcce
The SLEEP keycode is used by Android Wear to indicate a
"palming" gesture (covering the screen with one's hand).
The STEM_* buttons are used for side buttons on Wear.
The keycode values were added to the emulator in
http://r.android.com/330771
Bug: 19996432
Change-Id: Ib90c3b27209b0059ebc1c2cce46cc732a677d557
This allows an application that knows how to provide seamless
network connectivity (e.g., using QUIC multipath) to find out if
doing so is desired.
Test: builds, boots, runtest frameworks-net passes.
Bug: 34630278
Change-Id: Ic7fd0b9e1cd879fdfaf84009d7125391895e9087
This is a prepartion for fixing Bug 34838583
Currently Binder.clearCallingIdentity() is called too early, which
ends up always blaming the system UID when calledWithValidToken()
fails in InputMethodManagerService#updateStatusIcon().
Test: Compile
Bug: 34838583
Change-Id: Id69da24de8269c0c7e31ea9ef3c595c3d69fe40e
This is a follow up CL to my previous CL [1] for Bug 26663589.
This is also a preparation CL for Bug 34838583, where the warning
shown from the method in question is to be suppressed.
The fix still works, but the Binder.{clear, restore}CallingIdentity()
block introduced by that CL is not actually necessary, because
WindowManagerInternal#clearLastInputMethodWindowForTransition() only
updates some internal variables. No system privilege is involved.
[1]: Ib567daa009c1139858dccadcfc6a04465ebecf36
833bdcedce
Test: Manually verified that Bug 26663589 is still fixed.
1. Flash a new OS image.
2. Complete the setup wizard.
Make sure a voice IME (subtype mode="voice") is installed.
Make sure you can type with LatinIME.
3. Connect to an external hardware keyboard.
4. Launch an app whose window has "stateAlwaysVisible" bit.
5. Focus in an EditText on the app.
6. Hit the right ALT key on the hardware keyboard.
Make sure that LatinIME shows symbol keyboard.
7. Hit the "ABC" button at the left botton on keyboard.
8. Tap the mic icon on the keyboard.
Make sure that the voice IME is shown.
Bug: 26663589
Bug: 34838583
Change-Id: I88b3abb9fa88b54e4844dabd89126f5dcdda6405