diff --git a/editor/libeditor/html/nsHTMLEditRules.cpp b/editor/libeditor/html/nsHTMLEditRules.cpp
index 7093056bb683..08ed54a21927 100644
--- a/editor/libeditor/html/nsHTMLEditRules.cpp
+++ b/editor/libeditor/html/nsHTMLEditRules.cpp
@@ -1216,7 +1216,7 @@ nsHTMLEditRules::GetFormatString(nsIDOMNode *aNode, nsAString &outFormat)
}
else
{
- format.Truncate(0);
+ format.Truncate();
}
outFormat = format;
@@ -3307,18 +3307,10 @@ nsHTMLEditRules::WillMakeBasicBlock(nsISelection *aSelection,
nsCOMPtr curBlockPar;
if (!curBlock) return NS_ERROR_NULL_POINTER;
curBlock->GetParentNode(getter_AddRefs(curBlockPar));
- nsAutoString curBlockTag;
- nsEditor::GetTagString(curBlock, curBlockTag);
- ToLowerCase(curBlockTag);
- if ((curBlockTag.Equals(NS_LITERAL_STRING("pre"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("p"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h1"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h2"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h3"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h4"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h5"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h6"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("address"))))
+ if (nsHTMLEditUtils::IsPre(curBlock) ||
+ nsHTMLEditUtils::IsParagraph(curBlock) ||
+ nsHTMLEditUtils::IsHeader(curBlock) ||
+ nsHTMLEditUtils::IsAddress(curBlock))
{
// if the first editable node after selection is a br, consume it. Otherwise
// it gets pushed into a following block after the split, which is visually bad.
@@ -6689,15 +6681,10 @@ nsHTMLEditRules::RemoveBlockStyle(nsCOMArray& arrayOfNodes)
ToLowerCase(curNodeTag);
// if curNode is a address, p, header, address, or pre, remove it
- if ((curNodeTag.Equals(NS_LITERAL_STRING("pre"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("p"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h1"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h2"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h3"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h4"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h5"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h6"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("address"))))
+ if (nsHTMLEditUtils::IsPre(curNode) ||
+ nsHTMLEditUtils::IsParagraph(curNode) ||
+ nsHTMLEditUtils::IsHeader(curNode) ||
+ nsHTMLEditUtils::IsAddress(curNode))
{
// process any partial progress saved
if (curBlock)
@@ -6710,16 +6697,14 @@ nsHTMLEditRules::RemoveBlockStyle(nsCOMArray& arrayOfNodes)
res = mHTMLEditor->RemoveBlockContainer(curNode);
if (NS_FAILED(res)) return res;
}
- else if ((curNodeTag.Equals(NS_LITERAL_STRING("table"))) ||
+ else if (nsHTMLEditUtils::IsTable(curNode) ||
(curNodeTag.Equals(NS_LITERAL_STRING("tbody"))) ||
(curNodeTag.Equals(NS_LITERAL_STRING("tr"))) ||
(curNodeTag.Equals(NS_LITERAL_STRING("td"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("ol"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("ul"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("dl"))) ||
+ nsHTMLEditUtils::IsList(curNode) ||
(curNodeTag.Equals(NS_LITERAL_STRING("li"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("blockquote"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("div"))))
+ nsHTMLEditUtils::IsBlockquote(curNode) ||
+ nsHTMLEditUtils::IsDiv(curNode))
{
// process any partial progress saved
if (curBlock)
@@ -6757,17 +6742,10 @@ nsHTMLEditRules::RemoveBlockStyle(nsCOMArray& arrayOfNodes)
}
}
curBlock = mHTMLEditor->GetBlockNodeParent(curNode);
- nsEditor::GetTagString(curBlock, curBlockTag);
- ToLowerCase(curBlockTag);
- if ((curBlockTag.Equals(NS_LITERAL_STRING("pre"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("p"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h1"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h2"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h3"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h4"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h5"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("h6"))) ||
- (curBlockTag.Equals(NS_LITERAL_STRING("address"))))
+ if (nsHTMLEditUtils::IsPre(curBlock) ||
+ nsHTMLEditUtils::IsParagraph(curBlock) ||
+ nsHTMLEditUtils::IsHeader(curBlock) ||
+ nsHTMLEditUtils::IsAddress(curBlock))
{
firstNode = curNode;
lastNode = curNode;
@@ -6851,30 +6829,23 @@ nsHTMLEditRules::ApplyBlockStyle(nsCOMArray& arrayOfNodes, const nsA
// it with a new block of correct type.
// xxx floppy moose: pre cant hold everything the others can
if (nsHTMLEditUtils::IsMozDiv(curNode) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("pre"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("p"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h1"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h2"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h3"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h4"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h5"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("h6"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("address"))))
+ nsHTMLEditUtils::IsPre(curNode) ||
+ nsHTMLEditUtils::IsParagraph(curNode) ||
+ nsHTMLEditUtils::IsHeader(curNode) ||
+ nsHTMLEditUtils::IsAddress(curNode))
{
curBlock = 0; // forget any previous block used for previous inline nodes
res = mHTMLEditor->ReplaceContainer(curNode, address_of(newBlock), *aBlockTag);
if (NS_FAILED(res)) return res;
}
- else if ((curNodeTag.Equals(NS_LITERAL_STRING("table"))) ||
+ else if (nsHTMLEditUtils::IsTable(curNode) ||
(curNodeTag.Equals(NS_LITERAL_STRING("tbody"))) ||
(curNodeTag.Equals(NS_LITERAL_STRING("tr"))) ||
(curNodeTag.Equals(NS_LITERAL_STRING("td"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("ol"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("ul"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("dl"))) ||
+ nsHTMLEditUtils::IsList(curNode) ||
(curNodeTag.Equals(NS_LITERAL_STRING("li"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("blockquote"))) ||
- (curNodeTag.Equals(NS_LITERAL_STRING("div"))))
+ nsHTMLEditUtils::IsBlockquote(curNode) ||
+ nsHTMLEditUtils::IsDiv(curNode))
{
curBlock = 0; // forget any previous block used for previous inline nodes
// recursion time