Got questions, comments, patches, etc.?
Contact Jason Woofenden
gitweb
/
ckeditor.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vanilla ckeditor-3.5
[ckeditor.git]
/
_source
/
core
/
htmlparser
/
fragment.js
diff --git
a/_source/core/htmlparser/fragment.js
b/_source/core/htmlparser/fragment.js
index
ad1c93e
..
7912569
100644
(file)
--- a/
_source/core/htmlparser/fragment.js
+++ b/
_source/core/htmlparser/fragment.js
@@
-108,9
+108,9
@@
CKEDITOR.htmlParser.fragment = function()
}
\r
}
\r
\r
}
\r
}
\r
\r
- function sendPendingBRs()
\r
+ function sendPendingBRs( brsToIgnore )
\r
{
\r
{
\r
- while ( pendingBRs.length )
\r
+ while ( pendingBRs.length - ( brsToIgnore || 0 ) > 0 )
\r
currentNode.add( pendingBRs.shift() );
\r
}
\r
\r
currentNode.add( pendingBRs.shift() );
\r
}
\r
\r
@@
-125,7
+125,7
@@
CKEDITOR.htmlParser.fragment = function()
var elementName, realElementName;
\r
if ( element.attributes
\r
&& ( realElementName =
\r
var elementName, realElementName;
\r
if ( element.attributes
\r
&& ( realElementName =
\r
- element.attributes[ '_cke_real_element_type' ] ) )
\r
+ element.attributes[ 'data-cke-real-element-type' ] ) )
\r
elementName = realElementName;
\r
else
\r
elementName = element.name;
\r
elementName = realElementName;
\r
else
\r
elementName = element.name;
\r
@@
-237,6
+237,12
@@
CKEDITOR.htmlParser.fragment = function()
{
\r
addElement( currentNode, currentNode.parent );
\r
}
\r
{
\r
addElement( currentNode, currentNode.parent );
\r
}
\r
+ else if ( tagName in CKEDITOR.dtd.$listItem )
\r
+ {
\r
+ parser.onTagOpen( 'ul', {} );
\r
+ addPoint = currentNode;
\r
+ reApply = true;
\r
+ }
\r
else
\r
{
\r
if ( nonBreakingBlocks[ currentName ] )
\r
else
\r
{
\r
if ( nonBreakingBlocks[ currentName ] )
\r
@@
-274,6
+280,7
@@
CKEDITOR.htmlParser.fragment = function()
}
\r
\r
checkPending( tagName );
\r
}
\r
\r
checkPending( tagName );
\r
+ sendPendingBRs();
\r
\r
element.parent = currentNode;
\r
element.returnPoint = returnPoint;
\r
\r
element.parent = currentNode;
\r
element.returnPoint = returnPoint;
\r
@@
-385,13
+392,15
@@
CKEDITOR.htmlParser.fragment = function()
\r
parser.onComment = function( comment )
\r
{
\r
\r
parser.onComment = function( comment )
\r
{
\r
+ checkPending();
\r
currentNode.add( new CKEDITOR.htmlParser.comment( comment ) );
\r
};
\r
\r
// Parse it.
\r
parser.parse( fragmentHtml );
\r
\r
currentNode.add( new CKEDITOR.htmlParser.comment( comment ) );
\r
};
\r
\r
// Parse it.
\r
parser.parse( fragmentHtml );
\r
\r
- sendPendingBRs();
\r
+ // Send all pending BRs except one, which we consider a unwanted bogus. (#5293)
\r
+ sendPendingBRs( !CKEDITOR.env.ie && 1 );
\r
\r
// Close all pending nodes.
\r
while ( currentNode.type )
\r
\r
// Close all pending nodes.
\r
while ( currentNode.type )
\r