fix folding of li tags containing unclosed p tags

This commit is contained in:
nightwing 2014-11-12 18:38:50 +04:00
commit 742e8c01a8
2 changed files with 24 additions and 3 deletions

View file

@ -153,6 +153,30 @@ module.exports = {
assert.range(session.getFoldWidgetRange(0), 0, 5, 5, 0);
assert.range(session.getFoldWidgetRange(5), 0, 5, 5, 0);
},
"test: fold multiple nested optional elements": function() {
var session = new EditSession([
'<p>',
'<li>',
'<p>juhu',
'<p>',
'kinners',
'</li>'
]);
var mode = new HtmlMode();
session.setMode(mode);
session.setFoldStyle("markbeginend");
assert.equal(session.getFoldWidget(0), "start");
assert.equal(session.getFoldWidget(1), "start");
assert.equal(session.getFoldWidget(2), "start");
assert.equal(session.getFoldWidget(3), "start");
assert.equal(session.getFoldWidget(4), "");
assert.equal(session.getFoldWidget(5), "end");
assert.range(session.getFoldWidgetRange(1), 1, 4, 5, 0);
}
};

View file

@ -192,9 +192,6 @@ function is(token, type) {
if (!tag || top.tagName == tag.tagName) {
return stack.pop();
}
else if (this.optionalEndTags.hasOwnProperty(tag.tagName)) {
return;
}
else if (this.optionalEndTags.hasOwnProperty(top.tagName)) {
stack.pop();
continue;