Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 931b02f0 authored by Yohei Yukawa's avatar Yohei Yukawa
Browse files

Remove UMS#mUserStates lock from IMM#getInputMethodList()

With this CL the following methods

 * InputMethodManager#getInputMethodList()
 * InputMethodManager#getInputMethodListAsUser()
 * InputMethodManagerInternal#getInputMethodListAsUser()

stop acquiring

  synchronized (UserManagerService#mUserStates)

internally.

The idea is that we already have all the relevant user lifecycle
events. Thus it would make more sense to have our own canonical user
storage lock/unlock state in UserData rather than always calling into

  UserManagerInternal#isUserUnlockingOrUnlocked(userId),

which internally acquires mUserStates lock in UserManagerService.

This CL should generally make IMMS operations more predictable
regarding whether a user storage is considered to be still locked or
already unlocked. Other than that, the semantics should remain
unchanged.

Bug: 329703038
Bug: 343601565
Bug: 354323416
Test: presubmit
Flag: EXEMPT refactor
Change-Id: I8a83910d770754eef4b81a542d4f21ffc8efe296
parent 9f94e49d
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment