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

Skip to content
Commit 48adff60 authored by Antonio Kantek's avatar Antonio Kantek
Browse files

Restart IMM connection when running on automitive visible bkg user

This changelist configures the mPasswordEntry#onClickListener to re-establish the IME connection (InputMethodManager#restartInput) only when operating on automotive surfaces with visible background users enabled.

This change is necessary because, in concurrent multi-user mode, the InputMethodManagerService currently permits only a single display-user binding.

On automotive systems (HSUM) with visible background users enabled, the emulator boots up for all existing displays, which typically exceeds one. Consequently, InputMethodManager#startInputOrWindowGainedFocus is invoked for user 0 on every display. However, if the main user (the driver in the automotive context) attempts to log in on display 0, it may fail.
For instance, if the last call to InputMethodManager#startInputOrWindowGainedFocus was for display 3, the driver (user 10) cannot display input on display 0, as the InputMethodManagerService is now bound to display 3.

This issue will be resolved in the future by allowing the InputMethodManagerService to maintain multiple display-user bindings for a single user.

Phones and tablets should not experience any changes as this modification is specifically targeted towards automotive devices, requiring the config_perDisplayFocusEnabled config and visible background user feature to be enabled.

Test: presubmit
Test: atest CtsInputMethodTestCases
Bug: 358105425
Flag: EXEMPT bug fix
Change-Id: I845f462892a13cb200ec8698ee37cbf3b481c479
parent 36bbba20
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