Open Bug 1756098 Opened 3 years ago Updated 3 years ago

Make stop `HTMLEditor::DoSplitNode` flush pending notifications

Categories

(Core :: DOM: Editor, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: masayuki, Unassigned)

References

(Blocks 1 open bug)

Details

HTMLEditor::DoSplitNode flushes pending notifications before restoring Selection.
https://searchfox.org/mozilla-central/rev/8a0c04ef0242679016a086e56cae5d707a224d34/editor/libeditor/HTMLEditor.cpp#4588-4590

However, this makes it impossible to block running script while HTMLEditor is handling an edit action.

If we simply stop doing it, test_bug1330796.html which tests splitting quotation blocks in mail editor fails.
https://searchfox.org/mozilla-central/rev/8a0c04ef0242679016a086e56cae5d707a224d34/editor/libeditor/tests/test_bug1330796.html#41-42

The flush was added in bug 554806 which is about Enter key press in the mail cite indeed...

Probably, we need to handle the splitting mailcites in the normal path rather than separately in HTMLEditor::SplitMailCiteElements.

The failure log is:

0:23.12 FAIL unexpected HTML for test 1 - got "<span style=\"display: block;\">&gt; mai</span><br>x<br><span style=\"display: block;\">lcite<br></span>", expected "<span style=\"display: block;\">&gt; mai<br></span>x<br><span style=\"display: block;\">lcite<br></span>"
    SimpleTest.is@SimpleTest/SimpleTest.js:500:14
    @editor/libeditor/tests/test_bug1330796.html:79:7
    SimpleTest.waitForFocus/<@SimpleTest/SimpleTest.js:1041:13
You need to log in before you can comment on or make changes to this bug.