forked from mirrors/gecko-dev
`IMEStateManager` basically runs at focus change. However, when `designMode` is set to `"off"` or focused editing host becomes non-editable (removing `contenteditable` attribute or `contenteditable` attribute is set to `false`), IME may be disabled without a focus change. Therefore, `Document` needs to notify `IMEStateManager` of the timing. Additionally, `nsFocusManager` does not change focus when focused element becomes not focusable (bug 1807597). Therefore, `Document` needs to kick `focus` or `blur` event handler of `HTMLEditor` when active editing host becomes not editable. However, if an ancestor of focused element becomes editable, I think that `HTMLEditor` does not work well without focus move because it computes editing host with current editing state in a lot of places, but `Selection` and `nsFocusManager::GetFocusedElement` keeps working with previous focused element which is now a editable child of editing host. Therefore, this patch marks them as `todo` in the new tests. Differential Revision: https://phabricator.services.mozilla.com/D171196 |
||
|---|---|---|
| .. | ||
| composer | ||
| docs | ||
| libeditor | ||
| reftests | ||
| spellchecker | ||
| txmgr | ||
| AsyncSpellCheckTestHelper.sys.mjs | ||
| moz.build | ||
| nsIDocumentStateListener.idl | ||
| nsIEditActionListener.idl | ||
| nsIEditor.idl | ||
| nsIEditorMailSupport.idl | ||
| nsIEditorSpellCheck.idl | ||
| nsIHTMLAbsPosEditor.idl | ||
| nsIHTMLEditor.idl | ||
| nsIHTMLInlineTableEditor.idl | ||
| nsIHTMLObjectResizer.idl | ||
| nsITableEditor.idl | ||