Text entry is broken with certain input fields
Categories
(GeckoView :: IME, defect, P1)
Tracking
(firefox73 fixed)
| Tracking | Status | |
|---|---|---|
| firefox73 | --- | fixed |
People
(Reporter: rbarker, Assigned: m_kato)
References
(Blocks 1 open bug)
Details
(Whiteboard: [geckoview:m1912])
Attachments
(1 file)
Can be reproduced in GVE, Fenix Nightly, and FxR v7 builds.
STR:
- Got to google.com
- click
sign inbuggon - Try to enter text into
Email or phonetext field
Actual results:
- No text is entered
Expected results:
- Text is entered into the text field.
See FxR issue: https://github.com/MozillaReality/FirefoxReality/issues/2350
Updated•6 years ago
|
Comment 1•6 years ago
|
||
I've done some research in FxR and GVE. This problem only happens with multiprocess enabled.
In GVE, restartInput seems to be called multiple times consecutively (about 4-5) when the issue is reproduced. Flow example:
- restartInput reason: RESTART_REASON_FOCUS toggleSoftInput:true
- restartInput reason: RESTART_REASON_CONTENT_CHANGE toggleSoftInput:false
- restartInput reason: RESTART_REASON_BLUR toggleSoftInput:false
- restartInput reason: RESTART_REASON_FOCUS toggleSoftInput:true
After that flow GeckoEditable doesn't receive IME_REPLY_EVENTevents anymore and mActions is never cleaned
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
| Assignee | ||
Comment 4•6 years ago
|
||
It seems JNI issue and may be race condition. When calling onImeSynchronize() and OnNatvieCall is called, but runnable is failure (maybe this->lambda.GetNativeObject() is null in Run(). It means that GeckoEditableSupport will be died.)
GeckoEditableSupport::TransferParent might destroy own if dispatcher is nothing... But I guess that dispatcher's initialization is delayed...
| Assignee | ||
Comment 5•6 years ago
|
||
NOTIFY_IME_OF_FOCUS performs lazy initialization for text dispatcher. When
GeckoViewSupport attaches GeckoEditable during initialization,
GeckoEditableSupport destroys myself.
So we should use lazy task to check whether this attach is temporary.
Comment 7•6 years ago
|
||
| bugherder | ||
Comment 8•4 years ago
|
||
Moving some input bugs to the new GeckoView::IME component.
Description
•