Merge "Ignore empty paragraphs at the beginning of comments"

This commit is contained in:
jenkins-bot 2020-09-30 18:16:36 +00:00 committed by Gerrit Code Review
commit f7c7ba3c44
6 changed files with 169 additions and 182 deletions

View file

@ -86,7 +86,8 @@ class CommentParser {
* Return the next leaf node in the tree order that is not an empty or whitespace-only text node.
*
* In other words, this returns a text node with content other than whitespace, or an element node
* with no children, that follows the given node.
* with no children, such as `<img>` or `<hr>` (with the exception of `<br>`), that follows the
* given node in the HTML source.
*
* @param DOMNode $node Node to start searching at. This node's children are ignored.
* @return DOMNode
@ -111,7 +112,10 @@ class CommentParser {
$n->nodeType === XML_CDATA_SECTION_NODE &&
CommentUtils::htmlTrim( $n->nodeValue ) !== ''
) ||
( $n->nodeType === XML_ELEMENT_NODE && !$n->firstChild )
(
$n->nodeType === XML_ELEMENT_NODE &&
!$n->firstChild && strtolower( $n->nodeName ) !== 'br'
)
) {
return NodeFilter::FILTER_ACCEPT;
}

View file

@ -625,7 +625,8 @@ Parser.prototype.findSignature = function ( timestampNode, until ) {
* Return the next leaf node in the tree order that is not an empty or whitespace-only text node.
*
* In other words, this returns a Text node with content other than whitespace, or an Element node
* with no children, that follows the given node in the HTML source.
* with no children, such as `<img>` or `<hr>` (with the exception of `<br>`), that follows the
* given node in the HTML source.
*
* @private
* @param {Node} node Node to start searching at. If it isn't a leaf node, its children are ignored.
@ -648,7 +649,7 @@ Parser.prototype.nextInterestingLeafNode = function ( node ) {
if (
( n.nodeType === Node.TEXT_NODE && utils.htmlTrim( n.textContent ) !== '' ) ||
( n.nodeType === Node.CDATA_SECTION_NODE && utils.htmlTrim( n.textContent ) !== '' ) ||
( n.nodeType === Node.ELEMENT_NODE && !n.firstChild )
( n.nodeType === Node.ELEMENT_NODE && !n.firstChild && n.nodeName.toLowerCase() !== 'br' )
) {
return NodeFilter.FILTER_ACCEPT;
}

View file

@ -171,7 +171,7 @@
"timestamp": "2020-04-30T11:58:00.000Z",
"author": "Aws Al-mimari",
"range": [
"0/1/8/2/1",
"0/1/8/2/2",
"0/1/8/2/10/2"
],
"signatureRanges": [

View file

@ -503,14 +503,13 @@
],
"level": 1,
"id": "Sarchia Banokay|2015-07-16T14:01:00.000Z|0",
"replies": []
},
"replies": [
{
"type": "comment",
"timestamp": "2015-07-16T15:11:00.000Z",
"author": "Diyako kazm",
"range": [
"0/45/0",
"0/47/0/0",
"0/47/0/5/33"
],
"signatureRanges": [
@ -519,12 +518,10 @@
"0/47/0/5/33"
]
],
"level": 1,
"level": 2,
"id": "Diyako kazm|2015-07-16T15:11:00.000Z|0",
"warnings": [
"Comment starts and ends with different indentation"
],
"replies": [
"replies": []
},
{
"type": "comment",
"timestamp": "2015-07-16T21:31:00.000Z",
@ -1101,15 +1098,13 @@
"replies": []
}
]
}
]
},
{
"type": "comment",
"timestamp": "2016-03-03T15:56:00.000Z",
"author": "Diyar se",
"range": [
"0/119/0",
"0/121/0/0",
"0/121/0/3/29"
],
"signatureRanges": [
@ -1118,11 +1113,8 @@
"0/121/0/3/29"
]
],
"level": 1,
"level": 2,
"id": "Diyar se|2016-03-03T15:56:00.000Z|0",
"warnings": [
"Comment starts and ends with different indentation"
],
"replies": [
{
"type": "comment",
@ -1140,9 +1132,6 @@
],
"level": 3,
"id": "Calak|2016-03-03T16:29:00.000Z|0",
"warnings": [
"Comment skips indentation level"
],
"replies": [
{
"type": "comment",
@ -1224,6 +1213,8 @@
]
}
]
}
]
},
{
"type": "heading",

View file

@ -503,14 +503,13 @@
],
"level": 1,
"id": "Sarchia Banokay|2015-07-16T14:01:00.000Z|0",
"replies": []
},
"replies": [
{
"type": "comment",
"timestamp": "2015-07-16T15:11:00.000Z",
"author": "Diyako kazm",
"range": [
"0/6/4/1",
"0/6/6/0/0/0/0",
"0/6/6/0/5/33"
],
"signatureRanges": [
@ -519,12 +518,10 @@
"0/6/6/0/5/33"
]
],
"level": 1,
"level": 2,
"id": "Diyako kazm|2015-07-16T15:11:00.000Z|0",
"warnings": [
"Comment starts and ends with different indentation"
],
"replies": [
"replies": []
},
{
"type": "comment",
"timestamp": "2015-07-16T21:31:00.000Z",
@ -1101,15 +1098,13 @@
"replies": []
}
]
}
]
},
{
"type": "comment",
"timestamp": "2016-03-03T15:56:00.000Z",
"author": "Diyar se",
"range": [
"0/15/12/1",
"0/15/14/0/0",
"0/15/14/0/3/29"
],
"signatureRanges": [
@ -1118,11 +1113,8 @@
"0/15/14/0/3/29"
]
],
"level": 1,
"level": 2,
"id": "Diyar se|2016-03-03T15:56:00.000Z|0",
"warnings": [
"Comment starts and ends with different indentation"
],
"replies": [
{
"type": "comment",
@ -1140,9 +1132,6 @@
],
"level": 3,
"id": "Calak|2016-03-03T16:29:00.000Z|0",
"warnings": [
"Comment skips indentation level"
],
"replies": [
{
"type": "comment",
@ -1224,6 +1213,8 @@
]
}
]
}
]
},
{
"type": "heading",

View file

@ -4165,7 +4165,7 @@
"timestamp": "2019-06-14T13:11:00.000Z",
"author": "Nosebagbear",
"range": [
"0/24/2/1",
"0/24/2/2",
"0/24/12/0/6/27"
],
"signatureRanges": [