3 | | It turned out to be a constellation of 3 bugs that all this worked before #11586. First - range.extractContents was broken and didn't extract selected bogus <br>. Second, fixBlock, based on that incorrect behaviour, didn't worry about duplicating bogus <br> that could already exist in the range container. And finally, Firefox's absolutely creative bug which I fortunately already knew from other tickets. Namely, Firefox appends its own bogus <br> when the editable becomes empty, and that would be ok, but it also moves it around when doing operations on that DOM. The bug I reported previously - https://bugzilla.mozilla.org/show_bug.cgi?id=911201. The bug that, when fixed, will solve that <br> problems at all - https://bugzilla.mozilla.org/show_bug.cgi?id=1098151 |
| 3 | It turned out to be a constellation of 3 bugs that all this worked before #11586. First - range.extractContents was broken and didn't extract selected bogus <br> (this bug was fixed by #11586 which touched all 3 contents methods, hence the red tests). Second, fixBlock, based on that incorrect behaviour, didn't worry about duplicating bogus <br> that could already exist in the range container. And finally, Firefox's absolutely creative bug which I fortunately already knew from other tickets. Namely, Firefox appends its own bogus <br> when the editable becomes empty, and that would be ok, but it also moves it around when doing operations on that DOM. The bug I reported previously - https://bugzilla.mozilla.org/show_bug.cgi?id=911201. The bug that, when fixed, will solve that <br> problems at all - https://bugzilla.mozilla.org/show_bug.cgi?id=1098151 |