- Removing race between the system cleaning up the input consumer and the
controller who is also managing the input consumer lifecycle (it's
preferable for the controller to keep the input consumer registered,
and only to toggle the enabled state). Instead, we only ensure that we
clean up if the runner is unexpected destroyed.
- Also ensure that we don't add the input consumer on top of the runner's
app window
Bug: 117224991
Test: atest FrameworksServicesTests:RecentsAnimationTest
Test: atest FrameworksServicesTests:com.android.server.wm.RecentsAnimationControllerTest
Change-Id: I258f655417220b95112ba784e2ab2f30a9ee2a4a
The stack supervisor object should only be accessed through ATMS.
Test: Existing test pass
Bug: 80414790
Change-Id: I0648a95161a6a5c4ad714264d217c7f5e55852d7
In some monkey tests, getAdapterPosition returns -1 (for example, if the
ViewHolder is not bound). In this case, we shouldn't proceed with the
moving operation.
Test: manual
Change-Id: I1eccc2c60136ddf5cc0175d88a3fddbe1d2a5a97
Fixes: 117769352
Fixes: 116871219
Which processes to snapshot is controlled by a whitelist.
Benchmark for taking the snapshot:
https://docs.google.com/spreadsheets/d/1vG9ku8Uu8104CmKbO4cNeEKVeeByvHY--p0_dK1GAdA/edit?usp=sharing
(The difference between the first two sheets.)
~20ms constant cost plus ~4ms per process.
Bug: 115968899
Test: manually verified that statsd is included in the report
Change-Id: Iba680531c563ba28fae849e44044313866b2103f
We shouldn't move the home task to front if Recents was
not the previous top activity on the display where the
task lands.
Bug: 111363427
Test: atest ActivityStackSupervisorTests
Change-Id: I39b51d5eec897bf83b2380dd8b7947c13cc7dd57
This CL aims to simplify logic recently added to IMMS to support
multiple displays (Bug 111364446).
With my previous CLs [1][2], now we can simply review what
InputMethodManagerService#startInputUncheckedLocked() is actually
doing. Things we found and this CL does address are:
1. Redundant if conditions against null IMMS#mCurMethodId.
2. Timing to check IMMS#mSystemReady.
3. Timing to check display id access
4. Timing to update IMMS#mCurTokenDisplayId.
5. Unnecessary complexity due to IMMS#mCurFocusedWindowClient, which
is now guaranteed to equal to |cs| in that method.
Although this CL is not a mechanical safe refactroing, the new
behavior should be more efficient, solid and easier to maintain.
[1]: I52f6c4cd1e02be3a59e9a87e33b0a44f4ba8d80b
f91a2b102b
[2]: I71e259fa447dd06ff02b9ef8c958dc70bbce86ea
caaa1d3d2d
Bug: 117730713
Test: atest ActivityManagerMultiDisplayTests
Test: atest CtsInputMethodTestCases CtsInputMethodServiceHostTestCases
Test: atest FrameworksCoreTests:android.view.inputmethod.InputMethodManagerTest
Change-Id: Ic9232d9c3ec9802101df5f0bc511c55465b5bbe6
With my previous CL [1], IMMS#startInputInnerLocked() is called only
from IMMS#startInputUncheckedLocked(). By unextracting
IMMS#startInputInnerLocked() again, it would be much easier for us to
understand what IMMS#startInputUncheckedLocked() is actually doing.
To decouple actual behavior change from cosmetic code refactorings,
this CL does nothing except for merging IMMS#startInputInnerLocked()
into IMMS#startInputUncheckedLocked().
There should be no behavior change. Non trivial behavior
simplifications will be done in subsequent CLs.
[1]: I52f6c4cd1e02be3a59e9a87e33b0a44f4ba8d80b
f91a2b102b
Bug: 117730713
Test: atest ActivityManagerMultiDisplayTests
Test: atest CtsInputMethodTestCases CtsInputMethodServiceHostTestCases
Test: atest FrameworksCoreTests:android.view.inputmethod.InputMethodManagerTest
Change-Id: I71e259fa447dd06ff02b9ef8c958dc70bbce86ea
Previously min priority notifications would be
empty on the lockscreen. We're now showing them
if they are part of a group.
Bug: 117349034
Test: add group with min priority children on lockscreen
Change-Id: I3070e95f63c3b2cf227fbefdb53e3a3d09927ae9