зеркало из https://github.com/mozilla/pjs.git
convert nsCRT::strn?cmp to Convert() for bug 100214, to depend on string rather than xpcom for case-insensitive unicode support. r=sspitzer for mail stuff, r=jag for everything else, sr=sfraser
This commit is contained in:
Родитель
0c8d3569eb
Коммит
511a787492
|
@ -49,6 +49,7 @@
|
|||
#include "nsILoadGroup.h"
|
||||
#include "nsIChannel.h"
|
||||
#include "nsString.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsIContent.h"
|
||||
#include "nsIStyleSet.h"
|
||||
#include "nsIStyleSheet.h"
|
||||
|
@ -450,7 +451,7 @@ nsDocument::nsDocument() : mIsGoingAway(PR_FALSE),
|
|||
|
||||
mArena = nsnull;
|
||||
mDocumentURL = nsnull;
|
||||
mCharacterSet.AssignWithConversion("ISO-8859-1");
|
||||
mCharacterSet.Assign(NS_LITERAL_STRING("ISO-8859-1"));
|
||||
mParentDocument = nsnull;
|
||||
mRootContent = nsnull;
|
||||
mListenerManager = nsnull;
|
||||
|
@ -3330,7 +3331,7 @@ nsDocument::SaveFile( nsIFile* aFile,
|
|||
{
|
||||
rv = GetDocumentCharacterSet(charsetStr);
|
||||
if(NS_FAILED(rv)) {
|
||||
charsetStr.AssignWithConversion("ISO-8859-1");
|
||||
charsetStr.Assign(NS_LITERAL_STRING("ISO-8859-1"));
|
||||
}
|
||||
}
|
||||
encoder->SetCharset(charsetStr);
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include "nsHTMLValue.h"
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsISizeOfHandler.h"
|
||||
|
||||
|
@ -172,7 +173,9 @@ PRBool nsHTMLValue::operator==(const nsHTMLValue& aOther) const
|
|||
}
|
||||
}
|
||||
else if (nsnull != aOther.mValue.mString) {
|
||||
return 0 == nsCRT::strcasecmp(mValue.mString, aOther.mValue.mString);
|
||||
return 0 == Compare(nsDependentString(mValue.mString),
|
||||
nsDependentString(aOther.mValue.mString),
|
||||
nsCaseInsensitiveStringComparator());
|
||||
}
|
||||
}
|
||||
else if (eHTMLUnit_ISupports == mUnit) {
|
||||
|
|
|
@ -36,6 +36,7 @@ REQUIRES = xpcom \
|
|||
dom \
|
||||
js \
|
||||
locale \
|
||||
unicharutil \
|
||||
webshell \
|
||||
htmlparser \
|
||||
necko \
|
||||
|
|
|
@ -28,8 +28,8 @@ REQUIRES = xpcom \
|
|||
widget \
|
||||
dom \
|
||||
js \
|
||||
uriloader \
|
||||
locale \
|
||||
unicharutil \
|
||||
webshell \
|
||||
htmlparser \
|
||||
necko \
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "nsHTMLUtils.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsIDOMHTMLAnchorElement.h"
|
||||
#include "nsIDOMNSHTMLAnchorElement.h"
|
||||
#include "nsIDOMEventReceiver.h"
|
||||
|
@ -395,8 +396,8 @@ nsHTMLAnchorElement::StringToAttribute(nsIAtom* aAttribute,
|
|||
}
|
||||
}
|
||||
else if (aAttribute == nsHTMLAtoms::suppress) {
|
||||
if (nsCRT::strcasecmp(PromiseFlatString(aValue).get(),
|
||||
NS_LITERAL_STRING("true").get())) {
|
||||
if (Compare(aValue,NS_LITERAL_STRING("true"),
|
||||
nsCaseInsensitiveStringComparator())) {
|
||||
aResult.SetEmptyValue(); // XXX? shouldn't just leave "true"
|
||||
return NS_CONTENT_ATTR_HAS_VALUE;
|
||||
}
|
||||
|
|
|
@ -36,6 +36,7 @@ REQUIRES = xpcom \
|
|||
widget \
|
||||
caps \
|
||||
locale \
|
||||
unicharutil \
|
||||
js \
|
||||
necko \
|
||||
webshell \
|
||||
|
|
|
@ -35,6 +35,7 @@ REQUIRES = xpcom \
|
|||
htmlparser \
|
||||
docshell \
|
||||
uconv \
|
||||
unicharutil \
|
||||
xpconnect \
|
||||
pref \
|
||||
layout \
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
#include "nsIFrame.h"
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsVoidArray.h"
|
||||
#include "nsIUnicharInputStream.h"
|
||||
#include "nsHTMLIIDs.h"
|
||||
|
@ -186,6 +187,10 @@ PRBool AtomKey_base::Equals(const nsHashKey* aKey) const
|
|||
return PRBool (((AtomKey_base*)aKey)->mAtom == mAtom);
|
||||
}
|
||||
|
||||
// first try case-sensitive match
|
||||
if (((AtomKey_base*)aKey)->mAtom == mAtom)
|
||||
return PR_TRUE;
|
||||
|
||||
#ifdef DEBUG_HASH
|
||||
DebugHashCount(PR_FALSE);
|
||||
#endif
|
||||
|
@ -197,7 +202,9 @@ PRBool AtomKey_base::Equals(const nsHashKey* aKey) const
|
|||
const PRUnichar *theirStr = nsnull;
|
||||
theirAtom->GetUnicode(&theirStr);
|
||||
|
||||
return nsCRT::strcasecmp(myStr, theirStr) == 0;
|
||||
return Compare(nsDependentString(myStr),
|
||||
nsDependentString(theirStr),
|
||||
nsCaseInsensitiveStringComparator()) == 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -3367,7 +3374,9 @@ static PRBool ValueIncludes(const nsString& aValueList, const nsString& aValue,
|
|||
}
|
||||
}
|
||||
else {
|
||||
if (!nsCRT::strcasecmp(value, start)) {
|
||||
if (!Compare(nsDependentString(value),
|
||||
nsDependentString(start),
|
||||
nsCaseInsensitiveStringComparator())) {
|
||||
return PR_TRUE;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include "nsHTMLValue.h"
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsISizeOfHandler.h"
|
||||
|
||||
|
@ -172,7 +173,9 @@ PRBool nsHTMLValue::operator==(const nsHTMLValue& aOther) const
|
|||
}
|
||||
}
|
||||
else if (nsnull != aOther.mValue.mString) {
|
||||
return 0 == nsCRT::strcasecmp(mValue.mString, aOther.mValue.mString);
|
||||
return 0 == Compare(nsDependentString(mValue.mString),
|
||||
nsDependentString(aOther.mValue.mString),
|
||||
nsCaseInsensitiveStringComparator());
|
||||
}
|
||||
}
|
||||
else if (eHTMLUnit_ISupports == mUnit) {
|
||||
|
|
|
@ -42,6 +42,7 @@ REQUIRES = xpcom \
|
|||
rdf \
|
||||
necko \
|
||||
locale \
|
||||
unicharutil \
|
||||
xul \
|
||||
xuldoc \
|
||||
$(NULL)
|
||||
|
|
|
@ -34,6 +34,7 @@ REQUIRES = xpcom \
|
|||
rdf \
|
||||
necko \
|
||||
locale \
|
||||
unicharutil \
|
||||
layout \
|
||||
gfx \
|
||||
layout_xul \
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
#include "nsXULContentUtils.h"
|
||||
#include "nsXULTemplateBuilder.h"
|
||||
#include "nsVoidArray.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
// For security check
|
||||
#include "nsIDocument.h"
|
||||
|
@ -1821,7 +1822,9 @@ nsXULOutlinerBuilder::CompareMatches(nsTemplateMatch* aLeft, nsTemplateMatch* aR
|
|||
&result);
|
||||
}
|
||||
else
|
||||
result = nsCRT::strcasecmp(lstr, rstr);
|
||||
result = ::Compare(nsDependentString(lstr),
|
||||
nsDependentString(rstr),
|
||||
nsCaseInsensitiveStringComparator());
|
||||
|
||||
return result * mSortDirection;
|
||||
}
|
||||
|
|
|
@ -66,13 +66,13 @@
|
|||
#include "nsXULContentUtils.h"
|
||||
#include "nsString.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "rdf.h"
|
||||
#include "nsRDFSort.h"
|
||||
#include "nsVoidArray.h"
|
||||
#include "nsQuickSort.h"
|
||||
#include "nsIAtom.h"
|
||||
#include "nsIXULSortService.h"
|
||||
#include "nsString.h"
|
||||
#include "plhash.h"
|
||||
#include "plstr.h"
|
||||
#include "prlong.h"
|
||||
|
@ -938,7 +938,9 @@ XULSortServiceImpl::CompareNodes(nsIRDFNode *cellNode1, PRBool isCollationKey1,
|
|||
v1,v2,&sortOrder);
|
||||
}
|
||||
if (NS_FAILED(rv)) {
|
||||
sortOrder = nsCRT::strcasecmp(uni1, uni2);
|
||||
sortOrder = Compare(nsDependentString(uni1),
|
||||
nsDependentString(uni2),
|
||||
nsCaseInsensitiveStringComparator());
|
||||
}
|
||||
}
|
||||
else if (*uni1) sortOrder = -1;
|
||||
|
@ -1383,7 +1385,7 @@ XULSortServiceImpl::GetNodeValue(nsIContent *node1, sortPtr sortInfo, PRBool fir
|
|||
cellPosVal1.Cut(0, sizeof(kRDFNameSpace_Seq_Prefix)-1);
|
||||
|
||||
// hack: assume that its a number, so pad out a bit
|
||||
nsAutoString zero; zero.AssignWithConversion("000000");
|
||||
nsAutoString zero; zero.Assign(NS_LITERAL_STRING("000000"));
|
||||
if (cellPosVal1.Length() < zero.Length())
|
||||
{
|
||||
cellPosVal1.Insert(zero.get(), 0, PRInt32(zero.Length() - cellPosVal1.Length()));
|
||||
|
@ -1554,7 +1556,7 @@ XULSortServiceImpl::GetNodeValue(contentSortInfo *info1, sortPtr sortInfo, PRBoo
|
|||
cellPosVal1.Cut(0, sizeof(kRDFNameSpace_Seq_Prefix)-1);
|
||||
|
||||
// hack: assume that its a number, so pad out a bit
|
||||
nsAutoString zero; zero.AssignWithConversion("000000");
|
||||
nsAutoString zero; zero.Assign(NS_LITERAL_STRING("000000"));
|
||||
if (cellPosVal1.Length() < zero.Length())
|
||||
{
|
||||
cellPosVal1.Insert(zero.get(), 0, zero.Length() - cellPosVal1.Length());
|
||||
|
@ -2044,13 +2046,13 @@ XULSortServiceImpl::InsertContainerNode(nsIRDFCompositeDataSource *db, nsRDFSort
|
|||
sortState->sortProperty = sortInfo.sortProperty;
|
||||
|
||||
temp = sortResource;
|
||||
temp.AppendWithConversion("?collation=true");
|
||||
temp.Append(NS_LITERAL_STRING("?collation=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertyColl));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
sortState->sortPropertyColl = sortInfo.sortPropertyColl;
|
||||
|
||||
temp = sortResource;
|
||||
temp.AppendWithConversion("?sort=true");
|
||||
temp.Append(NS_LITERAL_STRING("?sort=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertySort));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
sortState->sortPropertySort = sortInfo.sortPropertySort;
|
||||
|
@ -2063,13 +2065,13 @@ XULSortServiceImpl::InsertContainerNode(nsIRDFCompositeDataSource *db, nsRDFSort
|
|||
sortState->sortProperty2 = sortInfo.sortProperty2;
|
||||
|
||||
temp = sortResource2;
|
||||
temp.AppendWithConversion("?collation=true");
|
||||
temp.Append(NS_LITERAL_STRING("?collation=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertyColl2));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
sortState->sortPropertyColl2 = sortInfo.sortPropertyColl2;
|
||||
|
||||
temp = sortResource2;
|
||||
temp.AppendWithConversion("?sort=true");
|
||||
temp.Append(NS_LITERAL_STRING("?sort=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertySort2));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
sortState->sortPropertySort2 = sortInfo.sortPropertySort2;
|
||||
|
@ -2400,12 +2402,12 @@ XULSortServiceImpl::DoSort(nsIDOMNode* node, const nsString& sortResource,
|
|||
|
||||
nsAutoString temp;
|
||||
temp.Assign(sortResource);
|
||||
temp.AppendWithConversion("?collation=true");
|
||||
temp.Append(NS_LITERAL_STRING("?collation=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertyColl));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
|
||||
temp.Assign(sortResource);
|
||||
temp.AppendWithConversion("?sort=true");
|
||||
temp.Append(NS_LITERAL_STRING("?sort=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertySort));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
|
||||
|
@ -2415,12 +2417,12 @@ XULSortServiceImpl::DoSort(nsIDOMNode* node, const nsString& sortResource,
|
|||
if (NS_FAILED(rv)) return(rv);
|
||||
|
||||
temp = sortResource2;
|
||||
temp.AppendWithConversion("?collation=true");
|
||||
temp.Append(NS_LITERAL_STRING("?collation=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertyColl2));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
|
||||
temp = sortResource2;
|
||||
temp.AppendWithConversion("?sort=true");
|
||||
temp.Append(NS_LITERAL_STRING("?sort=true"));
|
||||
rv = gRDFService->GetUnicodeResource(temp.get(), getter_AddRefs(sortInfo.sortPropertySort2));
|
||||
if (NS_FAILED(rv)) return(rv);
|
||||
}
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
#include "nsXULContentUtils.h"
|
||||
#include "nsXULTemplateBuilder.h"
|
||||
#include "nsVoidArray.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
// For security check
|
||||
#include "nsIDocument.h"
|
||||
|
@ -1821,7 +1822,9 @@ nsXULOutlinerBuilder::CompareMatches(nsTemplateMatch* aLeft, nsTemplateMatch* aR
|
|||
&result);
|
||||
}
|
||||
else
|
||||
result = nsCRT::strcasecmp(lstr, rstr);
|
||||
result = ::Compare(nsDependentString(lstr),
|
||||
nsDependentString(rstr),
|
||||
nsCaseInsensitiveStringComparator());
|
||||
|
||||
return result * mSortDirection;
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ REQUIRES = xpcom \
|
|||
dom \
|
||||
layout \
|
||||
locale \
|
||||
unicharutil \
|
||||
content \
|
||||
txmgr \
|
||||
htmlparser \
|
||||
|
|
|
@ -28,17 +28,12 @@ REQUIRES = xpcom \
|
|||
dom \
|
||||
layout \
|
||||
locale \
|
||||
unicharutil \
|
||||
content \
|
||||
uriloader \
|
||||
txmgr \
|
||||
htmlparser \
|
||||
necko \
|
||||
pref \
|
||||
view \
|
||||
webshell \
|
||||
timer \
|
||||
intl \
|
||||
docshell \
|
||||
gfx \
|
||||
widget \
|
||||
$(NULL)
|
||||
|
|
|
@ -75,6 +75,7 @@
|
|||
#include "InsertTextTxn.h"
|
||||
#include "DeleteTextTxn.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
|
||||
//const static char* kMOZEditorBogusNodeAttr="MOZ_EDITOR_BOGUS_NODE";
|
||||
|
@ -726,17 +727,17 @@ nsHTMLEditRules::GetAlignment(PRBool *aMixed, nsIHTMLEditor::EAlignment *aAlign)
|
|||
nsCOMPtr<nsIDOMElement> elem = do_QueryInterface(nodeToExamine);
|
||||
if (elem)
|
||||
{
|
||||
nsAutoString typeAttrName; typeAttrName.AssignWithConversion("align");
|
||||
nsAutoString typeAttrName; typeAttrName.Assign(NS_LITERAL_STRING("align"));
|
||||
nsAutoString typeAttrVal;
|
||||
res = elem->GetAttribute(typeAttrName, typeAttrVal);
|
||||
typeAttrVal.ToLowerCase();
|
||||
if (NS_SUCCEEDED(res) && typeAttrVal.Length())
|
||||
{
|
||||
if (typeAttrVal.EqualsWithConversion("center"))
|
||||
if (typeAttrVal.Equals(NS_LITERAL_STRING("center")))
|
||||
*aAlign = nsIHTMLEditor::eCenter;
|
||||
else if (typeAttrVal.EqualsWithConversion("right"))
|
||||
else if (typeAttrVal.Equals(NS_LITERAL_STRING("right")))
|
||||
*aAlign = nsIHTMLEditor::eRight;
|
||||
else if (typeAttrVal.EqualsWithConversion("justify"))
|
||||
else if (typeAttrVal.Equals(NS_LITERAL_STRING("justify")))
|
||||
*aAlign = nsIHTMLEditor::eJustify;
|
||||
else
|
||||
*aAlign = nsIHTMLEditor::eLeft;
|
||||
|
@ -935,7 +936,7 @@ nsHTMLEditRules::GetParagraphState(PRBool *aMixed, nsAWritableString &outFormat)
|
|||
}
|
||||
|
||||
// if this is the first node, we've found, remember it as the format
|
||||
if (formatStr.EqualsWithConversion("x"))
|
||||
if (formatStr.Equals(NS_LITERAL_STRING("x")))
|
||||
formatStr = format;
|
||||
// else make sure it matches previously found format
|
||||
else if (format != formatStr)
|
||||
|
@ -1069,7 +1070,7 @@ nsHTMLEditRules::WillInsertText(PRInt32 aAction,
|
|||
if (NS_FAILED(res)) return res;
|
||||
|
||||
// dont put text in places that cant have it
|
||||
nsAutoString textTag; textTag.AssignWithConversion("__moz_text");
|
||||
nsAutoString textTag; textTag.Assign(NS_LITERAL_STRING("__moz_text"));
|
||||
if (!mHTMLEditor->IsTextNode(selNode) && !mHTMLEditor->CanContainTag(selNode, textTag))
|
||||
return NS_ERROR_FAILURE;
|
||||
|
||||
|
@ -1155,7 +1156,7 @@ nsHTMLEditRules::WillInsertText(PRInt32 aAction,
|
|||
NS_NAMED_LITERAL_STRING(tabStr, "\t");
|
||||
NS_NAMED_LITERAL_STRING(newlineStr, "\n");
|
||||
char specialChars[] = {'\t','\n',0};
|
||||
nsAutoString tabString; tabString.AssignWithConversion(" ");
|
||||
nsAutoString tabString; tabString.Assign(NS_LITERAL_STRING(" "));
|
||||
while (unicodeBuf && (pos != -1) && (pos < (PRInt32)inString->Length()))
|
||||
{
|
||||
PRInt32 oldPos = pos;
|
||||
|
@ -2141,9 +2142,9 @@ nsHTMLEditRules::WillMakeList(nsISelection *aSelection,
|
|||
if (aItemType)
|
||||
itemType = *aItemType;
|
||||
else if (!Compare(*aListType,NS_LITERAL_STRING("dl"),nsCaseInsensitiveStringComparator()))
|
||||
itemType.AssignWithConversion("dd");
|
||||
itemType.Assign(NS_LITERAL_STRING("dd"));
|
||||
else
|
||||
itemType.AssignWithConversion("li");
|
||||
itemType.Assign(NS_LITERAL_STRING("li"));
|
||||
|
||||
// convert the selection ranges into "promoted" selection ranges:
|
||||
// this basically just expands the range to include the immediate
|
||||
|
@ -2488,7 +2489,7 @@ nsHTMLEditRules::WillMakeDefListItem(nsISelection *aSelection,
|
|||
{
|
||||
// for now we let WillMakeList handle this
|
||||
nsAutoString listType;
|
||||
listType.AssignWithConversion("dl");
|
||||
listType.Assign(NS_LITERAL_STRING("dl"));
|
||||
return WillMakeList(aSelection, &listType, aEntireList, aCancel, aHandled, aItemType);
|
||||
}
|
||||
|
||||
|
@ -2532,7 +2533,7 @@ nsHTMLEditRules::WillMakeBasicBlock(nsISelection *aSelection,
|
|||
// get selection location
|
||||
res = mHTMLEditor->GetStartNodeAndOffset(aSelection, address_of(parent), &offset);
|
||||
if (NS_FAILED(res)) return res;
|
||||
if (tString.EqualsWithConversion("normal") ||
|
||||
if (tString.Equals(NS_LITERAL_STRING("normal")) ||
|
||||
tString.IsEmpty() ) // we are removing blocks (going to "body text")
|
||||
{
|
||||
nsCOMPtr<nsIDOMNode> curBlock = parent;
|
||||
|
@ -2544,15 +2545,15 @@ nsHTMLEditRules::WillMakeBasicBlock(nsISelection *aSelection,
|
|||
nsAutoString curBlockTag;
|
||||
nsEditor::GetTagString(curBlock, curBlockTag);
|
||||
curBlockTag.ToLowerCase();
|
||||
if ((curBlockTag.EqualsWithConversion("pre")) ||
|
||||
(curBlockTag.EqualsWithConversion("p")) ||
|
||||
(curBlockTag.EqualsWithConversion("h1")) ||
|
||||
(curBlockTag.EqualsWithConversion("h2")) ||
|
||||
(curBlockTag.EqualsWithConversion("h3")) ||
|
||||
(curBlockTag.EqualsWithConversion("h4")) ||
|
||||
(curBlockTag.EqualsWithConversion("h5")) ||
|
||||
(curBlockTag.EqualsWithConversion("h6")) ||
|
||||
(curBlockTag.EqualsWithConversion("address")))
|
||||
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 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.
|
||||
|
@ -2619,9 +2620,9 @@ nsHTMLEditRules::WillMakeBasicBlock(nsISelection *aSelection,
|
|||
// Ok, now go through all the nodes and make the right kind of blocks,
|
||||
// or whatever is approriate. Wohoo!
|
||||
// Note: blockquote is handled a little differently
|
||||
if (tString.EqualsWithConversion("blockquote"))
|
||||
if (tString.Equals(NS_LITERAL_STRING("blockquote")))
|
||||
res = MakeBlockquote(arrayOfNodes);
|
||||
else if (tString.EqualsWithConversion("normal") ||
|
||||
else if (tString.Equals(NS_LITERAL_STRING("normal")) ||
|
||||
tString.IsEmpty() )
|
||||
res = RemoveBlockStyle(arrayOfNodes);
|
||||
else
|
||||
|
@ -2715,7 +2716,7 @@ nsHTMLEditRules::WillIndent(nsISelection *aSelection, PRBool *aCancel, PRBool *
|
|||
{
|
||||
nsCOMPtr<nsIDOMNode> parent, theBlock;
|
||||
PRInt32 offset;
|
||||
nsAutoString quoteType; quoteType.AssignWithConversion("blockquote");
|
||||
nsAutoString quoteType; quoteType.Assign(NS_LITERAL_STRING("blockquote"));
|
||||
|
||||
// get selection location
|
||||
res = mHTMLEditor->GetStartNodeAndOffset(aSelection, address_of(parent), &offset);
|
||||
|
@ -2801,7 +2802,7 @@ nsHTMLEditRules::WillIndent(nsISelection *aSelection, PRBool *aCancel, PRBool *
|
|||
// or if this node doesn't go in blockquote we used earlier.
|
||||
if (!curQuote) // || transitionList[i])
|
||||
{
|
||||
nsAutoString quoteType; quoteType.AssignWithConversion("blockquote");
|
||||
nsAutoString quoteType; quoteType.Assign(NS_LITERAL_STRING("blockquote"));
|
||||
res = SplitAsNeeded("eType, address_of(curParent), &offset);
|
||||
if (NS_FAILED(res)) return res;
|
||||
res = mHTMLEditor->CreateNode(quoteType, curParent, offset, getter_AddRefs(curQuote));
|
||||
|
@ -3343,7 +3344,7 @@ nsHTMLEditRules::WillAlign(nsISelection *aSelection,
|
|||
{
|
||||
PRInt32 offset;
|
||||
nsCOMPtr<nsIDOMNode> brNode, parent, theDiv, sib;
|
||||
nsAutoString divType; divType.AssignWithConversion("div");
|
||||
nsAutoString divType; divType.Assign(NS_LITERAL_STRING("div"));
|
||||
res = mHTMLEditor->GetStartNodeAndOffset(aSelection, address_of(parent), &offset);
|
||||
if (NS_FAILED(res)) return res;
|
||||
res = SplitAsNeeded(&divType, address_of(parent), &offset);
|
||||
|
@ -3410,7 +3411,7 @@ nsHTMLEditRules::WillAlign(nsISelection *aSelection,
|
|||
if (nsHTMLEditUtils::SupportsAlignAttr(curNode))
|
||||
{
|
||||
nsCOMPtr<nsIDOMElement> divElem = do_QueryInterface(curNode);
|
||||
nsAutoString attr; attr.AssignWithConversion("align");
|
||||
nsAutoString attr; attr.Assign(NS_LITERAL_STRING("align"));
|
||||
res = mHTMLEditor->SetAttribute(divElem, attr, *alignType);
|
||||
if (NS_FAILED(res)) return res;
|
||||
// clear out curDiv so that we don't put nodes after this one into it
|
||||
|
@ -3443,7 +3444,7 @@ nsHTMLEditRules::WillAlign(nsISelection *aSelection,
|
|||
// or if this node doesn't go in div we used earlier.
|
||||
if (!curDiv || transitionList[i])
|
||||
{
|
||||
nsAutoString divType; divType.AssignWithConversion("div");
|
||||
nsAutoString divType; divType.Assign(NS_LITERAL_STRING("div"));
|
||||
res = SplitAsNeeded(&divType, address_of(curParent), &offset);
|
||||
if (NS_FAILED(res)) return res;
|
||||
res = mHTMLEditor->CreateNode(divType, curParent, offset, getter_AddRefs(curDiv));
|
||||
|
@ -3452,7 +3453,7 @@ nsHTMLEditRules::WillAlign(nsISelection *aSelection,
|
|||
mNewBlock = curDiv;
|
||||
// set up the alignment on the div
|
||||
nsCOMPtr<nsIDOMElement> divElem = do_QueryInterface(curDiv);
|
||||
nsAutoString attr; attr.AssignWithConversion("align");
|
||||
nsAutoString attr; attr.Assign(NS_LITERAL_STRING("align"));
|
||||
res = mHTMLEditor->SetAttribute(divElem, attr, *alignType);
|
||||
if (NS_FAILED(res)) return res;
|
||||
// curDiv is now the correct thing to put curNode in
|
||||
|
@ -3531,19 +3532,19 @@ nsHTMLEditRules::AlignBlockContents(nsIDOMNode *aNode, const nsAReadableString *
|
|||
// the cell already has a div containing all of it's content: just
|
||||
// act on this div.
|
||||
nsCOMPtr<nsIDOMElement> divElem = do_QueryInterface(firstChild);
|
||||
nsAutoString attr; attr.AssignWithConversion("align");
|
||||
nsAutoString attr; attr.Assign(NS_LITERAL_STRING("align"));
|
||||
res = mHTMLEditor->SetAttribute(divElem, attr, *alignType);
|
||||
if (NS_FAILED(res)) return res;
|
||||
}
|
||||
else
|
||||
{
|
||||
// else we need to put in a div, set the alignment, and toss in all the children
|
||||
nsAutoString divType; divType.AssignWithConversion("div");
|
||||
nsAutoString divType; divType.Assign(NS_LITERAL_STRING("div"));
|
||||
res = mHTMLEditor->CreateNode(divType, aNode, 0, getter_AddRefs(divNode));
|
||||
if (NS_FAILED(res)) return res;
|
||||
// set up the alignment on the div
|
||||
nsCOMPtr<nsIDOMElement> divElem = do_QueryInterface(divNode);
|
||||
nsAutoString attr; attr.AssignWithConversion("align");
|
||||
nsAutoString attr; attr.Assign(NS_LITERAL_STRING("align"));
|
||||
res = mHTMLEditor->SetAttribute(divElem, attr, *alignType);
|
||||
if (NS_FAILED(res)) return res;
|
||||
// tuck the children into the end of the active div
|
||||
|
@ -5210,7 +5211,7 @@ nsHTMLEditRules::MakeBlockquote(nsISupportsArray *arrayOfNodes)
|
|||
// if no curBlock, make one
|
||||
if (!curBlock)
|
||||
{
|
||||
nsAutoString quoteType; quoteType.AssignWithConversion("blockquote");
|
||||
nsAutoString quoteType; quoteType.Assign(NS_LITERAL_STRING("blockquote"));
|
||||
res = SplitAsNeeded("eType, address_of(curParent), &offset);
|
||||
if (NS_FAILED(res)) return res;
|
||||
res = mHTMLEditor->CreateNode(quoteType, curParent, offset, getter_AddRefs(curBlock));
|
||||
|
@ -5263,15 +5264,15 @@ nsHTMLEditRules::RemoveBlockStyle(nsISupportsArray *arrayOfNodes)
|
|||
curNodeTag.ToLowerCase();
|
||||
|
||||
// if curNode is a address, p, header, address, or pre, remove it
|
||||
if ((curNodeTag.EqualsWithConversion("pre")) ||
|
||||
(curNodeTag.EqualsWithConversion("p")) ||
|
||||
(curNodeTag.EqualsWithConversion("h1")) ||
|
||||
(curNodeTag.EqualsWithConversion("h2")) ||
|
||||
(curNodeTag.EqualsWithConversion("h3")) ||
|
||||
(curNodeTag.EqualsWithConversion("h4")) ||
|
||||
(curNodeTag.EqualsWithConversion("h5")) ||
|
||||
(curNodeTag.EqualsWithConversion("h6")) ||
|
||||
(curNodeTag.EqualsWithConversion("address")))
|
||||
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"))))
|
||||
{
|
||||
// process any partial progress saved
|
||||
if (curBlock)
|
||||
|
@ -5284,16 +5285,16 @@ nsHTMLEditRules::RemoveBlockStyle(nsISupportsArray *arrayOfNodes)
|
|||
res = mHTMLEditor->RemoveBlockContainer(curNode);
|
||||
if (NS_FAILED(res)) return res;
|
||||
}
|
||||
else if ((curNodeTag.EqualsWithConversion("table")) ||
|
||||
(curNodeTag.EqualsWithConversion("tbody")) ||
|
||||
(curNodeTag.EqualsWithConversion("tr")) ||
|
||||
(curNodeTag.EqualsWithConversion("td")) ||
|
||||
(curNodeTag.EqualsWithConversion("ol")) ||
|
||||
(curNodeTag.EqualsWithConversion("ul")) ||
|
||||
(curNodeTag.EqualsWithConversion("dl")) ||
|
||||
(curNodeTag.EqualsWithConversion("li")) ||
|
||||
(curNodeTag.EqualsWithConversion("blockquote")) ||
|
||||
(curNodeTag.EqualsWithConversion("div")))
|
||||
else if ((curNodeTag.Equals(NS_LITERAL_STRING("table"))) ||
|
||||
(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"))) ||
|
||||
(curNodeTag.Equals(NS_LITERAL_STRING("li"))) ||
|
||||
(curNodeTag.Equals(NS_LITERAL_STRING("blockquote"))) ||
|
||||
(curNodeTag.Equals(NS_LITERAL_STRING("div"))))
|
||||
{
|
||||
// process any partial progress saved
|
||||
if (curBlock)
|
||||
|
@ -5333,15 +5334,15 @@ nsHTMLEditRules::RemoveBlockStyle(nsISupportsArray *arrayOfNodes)
|
|||
curBlock = mHTMLEditor->GetBlockNodeParent(curNode);
|
||||
nsEditor::GetTagString(curBlock, curBlockTag);
|
||||
curBlockTag.ToLowerCase();
|
||||
if ((curBlockTag.EqualsWithConversion("pre")) ||
|
||||
(curBlockTag.EqualsWithConversion("p")) ||
|
||||
(curBlockTag.EqualsWithConversion("h1")) ||
|
||||
(curBlockTag.EqualsWithConversion("h2")) ||
|
||||
(curBlockTag.EqualsWithConversion("h3")) ||
|
||||
(curBlockTag.EqualsWithConversion("h4")) ||
|
||||
(curBlockTag.EqualsWithConversion("h5")) ||
|
||||
(curBlockTag.EqualsWithConversion("h6")) ||
|
||||
(curBlockTag.EqualsWithConversion("address")))
|
||||
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"))))
|
||||
{
|
||||
firstNode = curNode;
|
||||
lastNode = curNode;
|
||||
|
@ -5415,30 +5416,30 @@ nsHTMLEditRules::ApplyBlockStyle(nsISupportsArray *arrayOfNodes, const nsAReadab
|
|||
// it with a new block of correct type.
|
||||
// xxx floppy moose: pre cant hold everything the others can
|
||||
if (nsHTMLEditUtils::IsMozDiv(curNode) ||
|
||||
(curNodeTag.EqualsWithConversion("pre")) ||
|
||||
(curNodeTag.EqualsWithConversion("p")) ||
|
||||
(curNodeTag.EqualsWithConversion("h1")) ||
|
||||
(curNodeTag.EqualsWithConversion("h2")) ||
|
||||
(curNodeTag.EqualsWithConversion("h3")) ||
|
||||
(curNodeTag.EqualsWithConversion("h4")) ||
|
||||
(curNodeTag.EqualsWithConversion("h5")) ||
|
||||
(curNodeTag.EqualsWithConversion("h6")) ||
|
||||
(curNodeTag.EqualsWithConversion("address")))
|
||||
(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"))))
|
||||
{
|
||||
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.EqualsWithConversion("table")) ||
|
||||
(curNodeTag.EqualsWithConversion("tbody")) ||
|
||||
(curNodeTag.EqualsWithConversion("tr")) ||
|
||||
(curNodeTag.EqualsWithConversion("td")) ||
|
||||
(curNodeTag.EqualsWithConversion("ol")) ||
|
||||
(curNodeTag.EqualsWithConversion("ul")) ||
|
||||
(curNodeTag.EqualsWithConversion("dl")) ||
|
||||
(curNodeTag.EqualsWithConversion("li")) ||
|
||||
(curNodeTag.EqualsWithConversion("blockquote")) ||
|
||||
(curNodeTag.EqualsWithConversion("div")))
|
||||
else if ((curNodeTag.Equals(NS_LITERAL_STRING("table"))) ||
|
||||
(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"))) ||
|
||||
(curNodeTag.Equals(NS_LITERAL_STRING("li"))) ||
|
||||
(curNodeTag.Equals(NS_LITERAL_STRING("blockquote"))) ||
|
||||
(curNodeTag.Equals(NS_LITERAL_STRING("div"))))
|
||||
{
|
||||
curBlock = 0; // forget any previous block used for previous inline nodes
|
||||
// recursion time
|
||||
|
@ -5450,7 +5451,7 @@ nsHTMLEditRules::ApplyBlockStyle(nsISupportsArray *arrayOfNodes, const nsAReadab
|
|||
}
|
||||
|
||||
// if the node is a break, we honor it by putting further nodes in a new parent
|
||||
else if (curNodeTag.EqualsWithConversion("br"))
|
||||
else if (curNodeTag.Equals(NS_LITERAL_STRING("br")))
|
||||
{
|
||||
curBlock = 0; // forget any previous block used for previous inline nodes
|
||||
res = mHTMLEditor->DeleteNode(curNode);
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include "nsICaret.h"
|
||||
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
#include "nsHTMLEditor.h"
|
||||
#include "nsHTMLEditRules.h"
|
||||
|
@ -1141,8 +1142,8 @@ NS_IMETHODIMP nsHTMLEditor::HandleKeyPress(nsIDOMKeyEvent* aKeyEvent)
|
|||
else if (nsHTMLEditUtils::IsListItem(blockParent))
|
||||
{
|
||||
nsAutoString indentstr;
|
||||
if (isShift) indentstr.AssignWithConversion("outdent");
|
||||
else indentstr.AssignWithConversion("indent");
|
||||
if (isShift) indentstr.Assign(NS_LITERAL_STRING("outdent"));
|
||||
else indentstr.Assign(NS_LITERAL_STRING("indent"));
|
||||
res = Indent(indentstr);
|
||||
bHandled = PR_TRUE;
|
||||
}
|
||||
|
@ -1305,7 +1306,7 @@ NS_IMETHODIMP nsHTMLEditor::CreateBRImpl(nsCOMPtr<nsIDOMNode> *aInOutParent,
|
|||
nsCOMPtr<nsIDOMNode> node = *aInOutParent;
|
||||
PRInt32 theOffset = *aInOutOffset;
|
||||
nsCOMPtr<nsIDOMCharacterData> nodeAsText = do_QueryInterface(node);
|
||||
nsAutoString brType; brType.AssignWithConversion("br");
|
||||
nsAutoString brType; brType.Assign(NS_LITERAL_STRING("br"));
|
||||
nsCOMPtr<nsIDOMNode> brNode;
|
||||
if (nodeAsText)
|
||||
{
|
||||
|
@ -1541,7 +1542,7 @@ nsHTMLEditor::ReplaceHeadContentsWithHTML(const nsAReadableString& aSourceToInse
|
|||
// Do not use nsAutoRules -- rules code won't let us insert in <head>
|
||||
// Use the head node as a parent and delete/insert directly
|
||||
nsCOMPtr<nsIDOMNodeList>nodeList;
|
||||
nsAutoString headTag; headTag.AssignWithConversion("head");
|
||||
nsAutoString headTag; headTag.Assign(NS_LITERAL_STRING("head"));
|
||||
|
||||
nsCOMPtr<nsIDOMDocument> doc = do_QueryReferent(mDocWeak);
|
||||
if (!doc) return NS_ERROR_NOT_INITIALIZED;
|
||||
|
@ -1966,7 +1967,7 @@ nsHTMLEditor::SetParagraphFormat(const nsAReadableString& aParagraphFormat)
|
|||
{
|
||||
nsAutoString tag; tag.Assign(aParagraphFormat);
|
||||
tag.ToLowerCase();
|
||||
if (tag.EqualsWithConversion("dd") || tag.EqualsWithConversion("dt"))
|
||||
if (tag.Equals(NS_LITERAL_STRING("dd")) || tag.Equals(NS_LITERAL_STRING("dt")))
|
||||
return MakeDefinitionItem(tag);
|
||||
else
|
||||
return InsertBasicBlock(tag);
|
||||
|
@ -2114,7 +2115,7 @@ nsHTMLEditor::GetBackgroundColorState(PRBool *aMixed, nsAWritableString &aOutCol
|
|||
nsresult res = GetSelectedOrParentTableElement(*getter_AddRefs(element), tagName, selectedCount);
|
||||
if (NS_FAILED(res)) return res;
|
||||
|
||||
nsAutoString styleName; styleName.AssignWithConversion("bgcolor");
|
||||
nsAutoString styleName; styleName.Assign(NS_LITERAL_STRING("bgcolor"));
|
||||
|
||||
while (element)
|
||||
{
|
||||
|
@ -2256,7 +2257,7 @@ nsHTMLEditor::MakeOrChangeList(const nsAReadableString& aListType, PRBool entire
|
|||
res = CreateNode(aListType, parent, offset, getter_AddRefs(newList));
|
||||
if (NS_FAILED(res)) return res;
|
||||
// make a list item
|
||||
nsAutoString tag; tag.AssignWithConversion("li");
|
||||
nsAutoString tag; tag.Assign(NS_LITERAL_STRING("li"));
|
||||
nsCOMPtr<nsIDOMNode> newItem;
|
||||
res = CreateNode(tag, newList, 0, getter_AddRefs(newItem));
|
||||
if (NS_FAILED(res)) return res;
|
||||
|
@ -2442,7 +2443,7 @@ nsHTMLEditor::Indent(const nsAReadableString& aIndent)
|
|||
if (!node) res = NS_ERROR_FAILURE;
|
||||
if (NS_FAILED(res)) return res;
|
||||
|
||||
nsAutoString inward; inward.AssignWithConversion("indent");
|
||||
nsAutoString inward; inward.Assign(NS_LITERAL_STRING("indent"));
|
||||
if (aIndent == inward)
|
||||
{
|
||||
if (isCollapsed)
|
||||
|
@ -2559,10 +2560,10 @@ nsHTMLEditor::GetElementOrParentByTagName(const nsAReadableString& aTagName, nsI
|
|||
PRBool getNamedAnchor = IsNamedAnchorTag(TagName);
|
||||
if ( getLink || getNamedAnchor)
|
||||
{
|
||||
TagName.AssignWithConversion("a");
|
||||
TagName.Assign(NS_LITERAL_STRING("a"));
|
||||
}
|
||||
PRBool findTableCell = TagName.EqualsWithConversion("td");
|
||||
PRBool findList = TagName.EqualsWithConversion("list");
|
||||
PRBool findTableCell = TagName.Equals(NS_LITERAL_STRING("td"));
|
||||
PRBool findList = TagName.Equals(NS_LITERAL_STRING("list"));
|
||||
|
||||
// default is null - no element found
|
||||
*aReturn = nsnull;
|
||||
|
@ -2898,7 +2899,7 @@ nsHTMLEditor::CreateElementWithDefaults(const nsAReadableString& aTagName, nsIDO
|
|||
|
||||
if (IsLinkTag(TagName) || IsNamedAnchorTag(TagName))
|
||||
{
|
||||
realTagName.AssignWithConversion("a");
|
||||
realTagName.Assign(NS_LITERAL_STRING("a"));
|
||||
} else {
|
||||
realTagName = TagName;
|
||||
}
|
||||
|
@ -2920,17 +2921,17 @@ nsHTMLEditor::CreateElementWithDefaults(const nsAReadableString& aTagName, nsIDO
|
|||
newElement->SetAttribute(NS_LITERAL_STRING("_moz_dirty"), nsAutoString());
|
||||
|
||||
// Set default values for new elements
|
||||
if (TagName.EqualsWithConversion("hr"))
|
||||
if (TagName.Equals(NS_LITERAL_STRING("hr")))
|
||||
{
|
||||
// Note that we read the user's attributes for these from prefs (in InsertHLine JS)
|
||||
newElement->SetAttribute(NS_LITERAL_STRING("width"),NS_LITERAL_STRING("100%"));
|
||||
newElement->SetAttribute(NS_LITERAL_STRING("size"),NS_LITERAL_STRING("2"));
|
||||
} else if (TagName.EqualsWithConversion("table"))
|
||||
} else if (TagName.Equals(NS_LITERAL_STRING("table")))
|
||||
{
|
||||
newElement->SetAttribute(NS_LITERAL_STRING("cellpadding"),NS_LITERAL_STRING("2"));
|
||||
newElement->SetAttribute(NS_LITERAL_STRING("cellspacing"),NS_LITERAL_STRING("2"));
|
||||
newElement->SetAttribute(NS_LITERAL_STRING("border"),NS_LITERAL_STRING("1"));
|
||||
} else if (TagName.EqualsWithConversion("td"))
|
||||
} else if (TagName.Equals(NS_LITERAL_STRING("td")))
|
||||
{
|
||||
newElement->SetAttribute(NS_LITERAL_STRING("valign"),NS_LITERAL_STRING("top"));
|
||||
}
|
||||
|
@ -3355,9 +3356,9 @@ nsHTMLEditor::GetEmbeddedObjects(nsISupportsArray** aNodeList)
|
|||
tagName.ToLowerCase();
|
||||
|
||||
// See if it's an image or an embed
|
||||
if (tagName.EqualsWithConversion("img") || tagName.EqualsWithConversion("embed"))
|
||||
if (tagName.Equals(NS_LITERAL_STRING("img")) || tagName.Equals(NS_LITERAL_STRING("embed")))
|
||||
(*aNodeList)->AppendElement(node);
|
||||
else if (tagName.EqualsWithConversion("a"))
|
||||
else if (tagName.Equals(NS_LITERAL_STRING("a")))
|
||||
{
|
||||
// Only include links if they're links to file: URLs
|
||||
nsCOMPtr<nsIDOMHTMLAnchorElement> anchor (do_QueryInterface(content));
|
||||
|
@ -3391,7 +3392,7 @@ static nsresult SetSelectionAroundHeadChildren(nsCOMPtr<nsISelection> aSelection
|
|||
nsresult res = NS_OK;
|
||||
// Set selection around <head> node
|
||||
nsCOMPtr<nsIDOMNodeList>nodeList;
|
||||
nsAutoString headTag; headTag.AssignWithConversion("head");
|
||||
nsAutoString headTag; headTag.Assign(NS_LITERAL_STRING("head"));
|
||||
|
||||
nsCOMPtr<nsIDOMDocument> doc = do_QueryReferent(aDocWeak);
|
||||
if (!doc) return NS_ERROR_NOT_INITIALIZED;
|
||||
|
@ -3677,9 +3678,9 @@ nsHTMLEditor::TagCanContainTag(const nsAReadableString& aParentTag, const nsARea
|
|||
|
||||
/*
|
||||
// if parent is a pre, and child is not inline, say "no"
|
||||
if ( aParentTag.EqualsWithConversion("pre") )
|
||||
if ( aParentTag.Equals(NS_LITERAL_STRING("pre")) )
|
||||
{
|
||||
if (aChildTag.EqualsWithConversion("__moz_text"))
|
||||
if (aChildTag.Equals(NS_LITERAL_STRING("__moz_text")))
|
||||
return PR_TRUE;
|
||||
PRInt32 childTagEnum, parentTagEnum;
|
||||
nsAutoString non_const_childTag(aChildTag);
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include "nsICaret.h"
|
||||
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
#include "nsHTMLEditor.h"
|
||||
#include "nsHTMLEditRules.h"
|
||||
|
@ -645,7 +646,7 @@ nsHTMLEditor::HasMatchingAttributes(nsIDOMNode *aNode1,
|
|||
attrName->ToString(attrString);
|
||||
// if it's a special _moz... attribute, keep going
|
||||
attrString.Left(tmp,4);
|
||||
if (tmp.EqualsWithConversion("_moz")) continue;
|
||||
if (tmp.Equals(NS_LITERAL_STRING("_moz"))) continue;
|
||||
// otherwise, it's another attribute, so count it
|
||||
realCount1++;
|
||||
// and compare it to element2's attributes
|
||||
|
@ -664,7 +665,7 @@ nsHTMLEditor::HasMatchingAttributes(nsIDOMNode *aNode1,
|
|||
attrName->ToString(attrString);
|
||||
// if it's a special _moz... attribute, keep going
|
||||
attrString.Left(tmp,4);
|
||||
if (tmp.EqualsWithConversion("_moz")) continue;
|
||||
if (tmp.Equals(NS_LITERAL_STRING("_moz"))) continue;
|
||||
// otherwise, it's another attribute, so count it
|
||||
realCount2++;
|
||||
}
|
||||
|
@ -1444,8 +1445,8 @@ nsHTMLEditor::RelativeFontChangeOnNode( PRInt32 aSizeChange,
|
|||
nsresult res = NS_OK;
|
||||
nsCOMPtr<nsIDOMNode> tmp;
|
||||
nsAutoString tag;
|
||||
if (aSizeChange == 1) tag.AssignWithConversion("big");
|
||||
else tag.AssignWithConversion("small");
|
||||
if (aSizeChange == 1) tag.Assign(NS_LITERAL_STRING("big"));
|
||||
else tag.Assign(NS_LITERAL_STRING("small"));
|
||||
|
||||
// is this node a text node?
|
||||
if (IsTextNode(aNode))
|
||||
|
@ -1500,12 +1501,12 @@ nsHTMLEditor::GetFontFaceState(PRBool *aMixed, nsAWritableString &outFace)
|
|||
if (!aMixed)
|
||||
return NS_ERROR_FAILURE;
|
||||
*aMixed = PR_TRUE;
|
||||
//outFace.AssignWithConversion("");
|
||||
//outFace.Assign(NS_LITERAL_STRING(""));
|
||||
outFace.SetLength(0);
|
||||
|
||||
nsresult res;
|
||||
nsAutoString faceStr;
|
||||
faceStr.AssignWithConversion("face");
|
||||
faceStr.Assign(NS_LITERAL_STRING("face"));
|
||||
PRBool first, any, all;
|
||||
|
||||
|
||||
|
@ -1545,7 +1546,7 @@ nsHTMLEditor::GetFontColorState(PRBool *aMixed, nsAWritableString &aOutColor)
|
|||
aOutColor.SetLength(0);
|
||||
|
||||
nsresult res;
|
||||
nsAutoString colorStr; colorStr.AssignWithConversion("color");
|
||||
nsAutoString colorStr; colorStr.Assign(NS_LITERAL_STRING("color"));
|
||||
PRBool first, any, all;
|
||||
|
||||
res = GetInlinePropertyBase(nsIEditProperty::font, &colorStr, nsnull, &first, &any, &all, &aOutColor);
|
||||
|
|
|
@ -33,10 +33,10 @@ REQUIRES = xpcom \
|
|||
docshell \
|
||||
appshell \
|
||||
intl \
|
||||
unicharutil \
|
||||
windowwatcher \
|
||||
gfx \
|
||||
content \
|
||||
raptor \
|
||||
$(NULL)
|
||||
|
||||
include <$(DEPTH)/config/config.mak>
|
||||
|
@ -67,23 +67,12 @@ EXPORTS= $(NULL)
|
|||
|
||||
LLIBS=$(LLIBS) $(LIBNSPR) \
|
||||
$(DIST)\lib\xpcom.lib \
|
||||
$(DIST)\lib\unicharutil_s.lib \
|
||||
!ifndef NECKO
|
||||
$(DIST)\lib\netlib.lib \
|
||||
!endif
|
||||
$(NULL)
|
||||
|
||||
LINCS= \
|
||||
-I$(PUBLIC)\raptor \
|
||||
-I$(PUBLIC)\xpcom \
|
||||
-I$(PUBLIC)\dom \
|
||||
-I$(PUBLIC)\js \
|
||||
-I$(PUBLIC)\security\
|
||||
-I$(PUBLIC)\pref \
|
||||
-I$(PUBLIC)\wallet \
|
||||
-I$(PUBLIC)\intl \
|
||||
-I$(PUBLIC)\locale \
|
||||
$(NULL)
|
||||
|
||||
LCFLAGS = \
|
||||
$(LCFLAGS) \
|
||||
$(DEFINES) \
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
|
||||
#include "nsNetUtil.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
#include "nsIServiceManager.h"
|
||||
#include "nsIDocument.h"
|
||||
|
@ -1779,7 +1780,7 @@ static PRInt32 FieldToValue(
|
|||
|
||||
if (!failed && wallet_ReadFromList(sublistPtr->item, value2, dummy, wallet_SchemaToValue_list, PR_TRUE, index3)) {
|
||||
if (value.Length()>0) {
|
||||
value.AppendWithConversion(" ");
|
||||
value.Append(NS_LITERAL_STRING(" "));
|
||||
}
|
||||
|
||||
/* found an unused value for the multi-rhs item */
|
||||
|
@ -1813,7 +1814,7 @@ static PRInt32 FieldToValue(
|
|||
|
||||
nsAutoString temp;
|
||||
wallet_GetHostFile(wallet_lastUrl, temp);
|
||||
temp.AppendWithConversion(":");
|
||||
temp.Append(NS_LITERAL_STRING(":"));
|
||||
temp.Append(field);
|
||||
|
||||
if (wallet_ReadFromList(temp, value, itemList, wallet_SchemaToValue_list, PR_TRUE, index2)) {
|
||||
|
@ -2107,7 +2108,7 @@ wallet_ResolvePositionalSchema(nsIDOMNode* elementNode, nsString& schema) {
|
|||
nsAutoString fractionStringWithoutDenominator; /* of form 2/ meaning 2nd in any-length set */
|
||||
fractionString.SetLength(0);
|
||||
fractionString.AppendInt(numerator);
|
||||
fractionString.AppendWithConversion("/");
|
||||
fractionString.Append(NS_LITERAL_STRING("/"));
|
||||
fractionStringWithoutDenominator.Assign(fractionString);
|
||||
fractionString.AppendInt(denominator);
|
||||
|
||||
|
@ -2203,7 +2204,7 @@ wallet_ResolveStateSchema(nsIDOMNode* elementNode, nsString& schema) {
|
|||
/* test to see if we obtained the catch-all (*) state.
|
||||
* Note: the catch-all must be the last entry in the list
|
||||
*/
|
||||
if (sublistPtr->item.EqualsWithConversion("*")) {
|
||||
if (sublistPtr->item.Equals(NS_LITERAL_STRING("*"))) {
|
||||
sublistPtr = NS_STATIC_CAST(wallet_Sublist*, mapElementPtr->itemList->ElementAt(j+1));
|
||||
schema = sublistPtr->item;
|
||||
return;
|
||||
|
@ -2237,7 +2238,7 @@ wallet_ResolveStateSchema(nsIDOMNode* elementNode, nsString& schema) {
|
|||
PRInt32 count2 = LIST_COUNT(mapElementPtr->itemList);
|
||||
for (PRInt32 j=0; j<count2; j=j+2) {
|
||||
sublistPtr = NS_STATIC_CAST(wallet_Sublist*, mapElementPtr->itemList->ElementAt(j));
|
||||
if (sublistPtr->item.EqualsWithConversion("*")) {
|
||||
if (sublistPtr->item.Equals(NS_LITERAL_STRING("*"))) {
|
||||
previousElementNode = localElementNode;
|
||||
sublistPtr = NS_STATIC_CAST(wallet_Sublist*, mapElementPtr->itemList->ElementAt(j+1));
|
||||
schema = sublistPtr->item;
|
||||
|
@ -2378,7 +2379,7 @@ wallet_GetPrefills(
|
|||
if (schema.Length() == 0) {
|
||||
nsCOMPtr<nsIDOMElement> element = do_QueryInterface(elementNode);
|
||||
if (element) {
|
||||
nsAutoString vcard; vcard.AssignWithConversion("VCARD_NAME");
|
||||
nsAutoString vcard; vcard.Assign(NS_LITERAL_STRING("VCARD_NAME"));
|
||||
nsAutoString vcardValue;
|
||||
result = element->GetAttribute(vcard, vcardValue);
|
||||
if (NS_OK == result) {
|
||||
|
@ -2754,7 +2755,7 @@ wallet_OKToCapture(char* urlName, nsIDOMWindowInternal* window) {
|
|||
/* see if this url is already on list of url's for which we don't want to capture */
|
||||
wallet_InitializeURLList();
|
||||
nsVoidArray* dummy;
|
||||
nsAutoString value; value.AssignWithConversion("nn");
|
||||
nsAutoString value; value.Assign(NS_LITERAL_STRING("nn"));
|
||||
if (wallet_ReadFromList(url, value, dummy, wallet_URL_list, PR_FALSE)) {
|
||||
if (value.CharAt(NO_CAPTURE) == 'y') {
|
||||
return PR_FALSE;
|
||||
|
@ -2852,7 +2853,7 @@ wallet_Capture(nsIDocument* doc, const nsString& field, const nsString& value, c
|
|||
|
||||
nsAutoString concat_param;
|
||||
wallet_GetHostFile(wallet_lastUrl, concat_param);
|
||||
concat_param.AppendWithConversion(":");
|
||||
concat_param.Append(NS_LITERAL_STRING(":"));
|
||||
concat_param.Append(field);
|
||||
|
||||
while(wallet_ReadFromList(concat_param, oldValue, dummy, wallet_SchemaToValue_list, PR_TRUE, index)) {
|
||||
|
@ -2878,7 +2879,7 @@ wallet_Capture(nsIDocument* doc, const nsString& field, const nsString& value, c
|
|||
lastIndex = index;
|
||||
|
||||
wallet_GetHostFile(wallet_lastUrl, concat_param);
|
||||
concat_param.AppendWithConversion(":");
|
||||
concat_param.Append(NS_LITERAL_STRING(":"));
|
||||
concat_param.Append(field);
|
||||
}
|
||||
|
||||
|
@ -2886,7 +2887,7 @@ wallet_Capture(nsIDocument* doc, const nsString& field, const nsString& value, c
|
|||
dummy = 0;
|
||||
nsAutoString hostFileField;
|
||||
wallet_GetHostFile(wallet_lastUrl, hostFileField);
|
||||
hostFileField.AppendWithConversion(":");
|
||||
hostFileField.Append(NS_LITERAL_STRING(":"));
|
||||
hostFileField.Append(field);
|
||||
|
||||
if (wallet_WriteToList(hostFileField, value, dummy, wallet_SchemaToValue_list, PR_TRUE)) {
|
||||
|
@ -2916,11 +2917,11 @@ WLLT_GetNopreviewListForViewer(nsString& aNopreviewList)
|
|||
url = NS_STATIC_CAST(wallet_MapElement*, wallet_URL_list->ElementAt(i));
|
||||
if (url->item2.CharAt(NO_PREVIEW) == 'y') {
|
||||
buffer.AppendWithConversion(BREAK);
|
||||
buffer.AppendWithConversion("<OPTION value=");
|
||||
buffer.Append(NS_LITERAL_STRING("<OPTION value="));
|
||||
buffer.AppendInt(nopreviewNum, 10);
|
||||
buffer.AppendWithConversion(">");
|
||||
buffer.Append(NS_LITERAL_STRING(">"));
|
||||
buffer += url->item1;
|
||||
buffer.AppendWithConversion("</OPTION>\n");
|
||||
buffer.Append(NS_LITERAL_STRING("</OPTION>\n"));
|
||||
nopreviewNum++;
|
||||
}
|
||||
}
|
||||
|
@ -2940,11 +2941,11 @@ WLLT_GetNocaptureListForViewer(nsString& aNocaptureList)
|
|||
url = NS_STATIC_CAST(wallet_MapElement*, wallet_URL_list->ElementAt(i));
|
||||
if (url->item2.CharAt(NO_CAPTURE) == 'y') {
|
||||
buffer.AppendWithConversion(BREAK);
|
||||
buffer.AppendWithConversion("<OPTION value=");
|
||||
buffer.Append(NS_LITERAL_STRING("<OPTION value="));
|
||||
buffer.AppendInt(nocaptureNum, 10);
|
||||
buffer.AppendWithConversion(">");
|
||||
buffer.Append(NS_LITERAL_STRING(">"));
|
||||
buffer += url->item1;
|
||||
buffer.AppendWithConversion("</OPTION>\n");
|
||||
buffer.Append(NS_LITERAL_STRING("</OPTION>\n"));
|
||||
nocaptureNum++;
|
||||
}
|
||||
}
|
||||
|
@ -2974,7 +2975,7 @@ WLLT_PostEdit(const nsString& walletList)
|
|||
tail = temp;
|
||||
|
||||
/* return if OK button was not pressed */
|
||||
if (!head.EqualsWithConversion("OK")) {
|
||||
if (!head.Equals(NS_LITERAL_STRING("OK"))) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -3183,10 +3184,10 @@ WLLT_PrefillReturn(const nsString& results)
|
|||
wallet_DecodeVerticalBars(urlName);
|
||||
|
||||
/* add url to url list if user doesn't want to preview this page in the future */
|
||||
if (skip.EqualsWithConversion("true")) {
|
||||
if (skip.Equals(NS_LITERAL_STRING("true"))) {
|
||||
nsAutoString url = nsAutoString(urlName);
|
||||
nsVoidArray* dummy;
|
||||
nsAutoString value; value.AssignWithConversion("nn");
|
||||
nsAutoString value; value.Assign(NS_LITERAL_STRING("nn"));
|
||||
wallet_ReadFromList(url, value, dummy, wallet_URL_list, PR_FALSE);
|
||||
value.SetCharAt('y', NO_PREVIEW);
|
||||
if (wallet_WriteToList(url, value, dummy, wallet_URL_list, PR_FALSE, DUP_OVERWRITE)) {
|
||||
|
@ -3473,7 +3474,7 @@ WLLT_Prefill(nsIPresShell* shell, PRBool quick, nsIDOMWindowInternal* win)
|
|||
if (!quick) {
|
||||
wallet_InitializeURLList();
|
||||
nsVoidArray* dummy;
|
||||
nsAutoString value; value.AssignWithConversion("nn");
|
||||
nsAutoString value; value.Assign(NS_LITERAL_STRING("nn"));
|
||||
if (urlName.Length() != 0) {
|
||||
wallet_ReadFromList(urlName, value, dummy, wallet_URL_list, PR_FALSE);
|
||||
noPreview = (value.CharAt(NO_PREVIEW) == 'y');
|
||||
|
@ -3533,7 +3534,7 @@ wallet_CaptureInputElement(nsIDOMNode* elementNode, nsIDocument* doc) {
|
|||
nsAutoString schema;
|
||||
nsCOMPtr<nsIDOMElement> element = do_QueryInterface(elementNode);
|
||||
if (element) {
|
||||
nsAutoString vcardName; vcardName.AssignWithConversion("VCARD_NAME");
|
||||
nsAutoString vcardName; vcardName.Assign(NS_LITERAL_STRING("VCARD_NAME"));
|
||||
nsAutoString vcardValue;
|
||||
result = element->GetAttribute(vcardName, vcardValue);
|
||||
if (NS_OK == result) {
|
||||
|
@ -3603,7 +3604,7 @@ wallet_CaptureSelectElement(nsIDOMNode* elementNode, nsIDocument* doc) {
|
|||
nsAutoString schema;
|
||||
nsCOMPtr<nsIDOMElement> element = do_QueryInterface(elementNode);
|
||||
if (element) {
|
||||
nsAutoString vcardName; vcardName.AssignWithConversion("VCARD_NAME");
|
||||
nsAutoString vcardName; vcardName.Assign(NS_LITERAL_STRING("VCARD_NAME"));
|
||||
nsAutoString vcardValue;
|
||||
result = element->GetAttribute(vcardName, vcardValue);
|
||||
if (NS_OK == result) {
|
||||
|
@ -3781,7 +3782,7 @@ wallet_IsFromCartman(nsIURI* aURL) {
|
|||
#ifdef AutoCapture
|
||||
PRIVATE PRBool
|
||||
wallet_IsNewValue(nsIDOMNode* elementNode, nsString valueOnForm) {
|
||||
if (valueOnForm.EqualsWithConversion("")) {
|
||||
if (valueOnForm.Equals(NS_LITERAL_STRING(""))) {
|
||||
return PR_FALSE;
|
||||
}
|
||||
nsIDOMHTMLInputElement* inputElement;
|
||||
|
|
|
@ -34,6 +34,7 @@ MODULE_NAME = nsCharDetModule
|
|||
REQUIRES = xpcom \
|
||||
string \
|
||||
uconv \
|
||||
unicharutil \
|
||||
webshell \
|
||||
docshell \
|
||||
htmlparser \
|
||||
|
|
|
@ -65,6 +65,7 @@ MODULE_NAME=nsCharDetModule
|
|||
REQUIRES = xpcom \
|
||||
string \
|
||||
uconv \
|
||||
unicharutil \
|
||||
webshell \
|
||||
docshell \
|
||||
htmlparser \
|
||||
|
@ -77,6 +78,7 @@ REQUIRES = xpcom \
|
|||
$(NULL)
|
||||
|
||||
LLIBS= \
|
||||
$(DIST)\lib\unicharutil_s.lib \
|
||||
$(DIST)\lib\xpcom.lib \
|
||||
$(LIBNSPR)
|
||||
|
||||
|
|
|
@ -54,6 +54,7 @@
|
|||
#include "nsIParserService.h"
|
||||
#include "nsParserCIID.h"
|
||||
#include "nsMetaCharsetCID.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
|
||||
static NS_DEFINE_IID(kParserServiceCID, NS_PARSERSERVICE_CID);
|
||||
|
@ -104,7 +105,8 @@ NS_IMETHODIMP nsMetaCharsetObserver::Notify(
|
|||
const PRUnichar* nameArray[],
|
||||
const PRUnichar* valueArray[])
|
||||
{
|
||||
if(0 != nsCRT::strcasecmp(aTag, NS_LITERAL_STRING("META").get()))
|
||||
|
||||
if(0 != Compare(nsDependentString(aTag), NS_LITERAL_STRING("META"), nsCaseInsensitiveStringComparator()))
|
||||
return NS_ERROR_ILLEGAL_VALUE;
|
||||
else
|
||||
return Notify(aDocumentID, numOfAttributes, nameArray, valueArray);
|
||||
|
@ -145,7 +147,8 @@ NS_IMETHODIMP nsMetaCharsetObserver::Notify(
|
|||
const PRUnichar* aTag,
|
||||
const nsStringArray* keys, const nsStringArray* values)
|
||||
{
|
||||
if(0 != nsCRT::strcasecmp(aTag, NS_LITERAL_STRING("META").get()))
|
||||
if(0 != Compare(nsDependentString(aTag), NS_LITERAL_STRING("META"),
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
return NS_ERROR_ILLEGAL_VALUE;
|
||||
else
|
||||
return Notify(aWebShell, aChannel, keys, values);
|
||||
|
@ -212,12 +215,18 @@ NS_IMETHODIMP nsMetaCharsetObserver::Notify(
|
|||
while(IS_SPACE_CHARS(*keyStr))
|
||||
keyStr++;
|
||||
|
||||
if(0 == nsCRT::strncasecmp(keyStr, NS_LITERAL_STRING("HTTP-EQUIV").get(), 10))
|
||||
httpEquivValue=((values->StringAt(i))->get());
|
||||
else if(0 == nsCRT::strncasecmp(keyStr, NS_LITERAL_STRING("content").get(), 7))
|
||||
contentValue=(values->StringAt(i))->get();
|
||||
else if (0 == nsCRT::strncasecmp(keyStr, NS_LITERAL_STRING("charset").get(), 7))
|
||||
charsetValue =(values->StringAt(i))->get();
|
||||
if(0 == Compare(nsDependentString(keyStr, 10),
|
||||
NS_LITERAL_STRING("HTTP-EQUIV"),
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
httpEquivValue = values->StringAt(i)->get();
|
||||
else if(0 == Compare(nsDependentString(keyStr, 7),
|
||||
NS_LITERAL_STRING("content"),
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
contentValue = values->StringAt(i)->get();
|
||||
else if (0 == Compare(nsDependentString(keyStr, 7),
|
||||
NS_LITERAL_STRING("charset"),
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
charsetValue = values->StringAt(i)->get();
|
||||
}
|
||||
NS_NAMED_LITERAL_STRING(contenttype, "Content-Type");
|
||||
NS_NAMED_LITERAL_STRING(texthtml, "text/html");
|
||||
|
@ -225,25 +234,33 @@ NS_IMETHODIMP nsMetaCharsetObserver::Notify(
|
|||
if(nsnull == httpEquivValue || nsnull == contentValue)
|
||||
return NS_OK;
|
||||
|
||||
while(IS_SPACE_CHARS(*httpEquivValue))
|
||||
while(IS_SPACE_CHARS(*httpEquivValue))
|
||||
httpEquivValue++;
|
||||
while(IS_SPACE_CHARS(*contentValue))
|
||||
while(IS_SPACE_CHARS(*contentValue))
|
||||
contentValue++;
|
||||
|
||||
if(
|
||||
((0==nsCRT::strcasecmp(httpEquivValue,contenttype.get())) ||
|
||||
// first try unquoted strings
|
||||
((0==Compare(nsDependentString(httpEquivValue,contenttype.Length()),
|
||||
contenttype,
|
||||
nsCaseInsensitiveStringComparator())) ||
|
||||
// now try "quoted" or 'quoted' strings
|
||||
(( (httpEquivValue[0]=='\'') ||
|
||||
(httpEquivValue[0]=='\"') ) &&
|
||||
(0==nsCRT::strncasecmp(httpEquivValue+1,
|
||||
contenttype.get(),
|
||||
contenttype.Length()))
|
||||
(0==Compare(nsDependentString(httpEquivValue+1, contenttype.Length()),
|
||||
contenttype,
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
)) &&
|
||||
((0==nsCRT::strncasecmp(contentValue,texthtml.get(),texthtml.Length())) ||
|
||||
// first try unquoted strings
|
||||
((0==Compare(nsDependentString(contentValue,texthtml.Length()),
|
||||
texthtml,
|
||||
nsCaseInsensitiveStringComparator())) ||
|
||||
// now try "quoted" or 'quoted' strings
|
||||
(((contentValue[0]=='\'') ||
|
||||
(contentValue[0]=='\"'))&&
|
||||
(0==nsCRT::strncasecmp(contentValue+1,
|
||||
texthtml.get(),
|
||||
texthtml.Length()))
|
||||
(0==Compare(nsDependentString(contentValue+1, texthtml.Length()),
|
||||
texthtml,
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
))
|
||||
)
|
||||
{
|
||||
|
@ -335,7 +352,8 @@ NS_IMETHODIMP nsMetaCharsetObserver::GetCharsetFromCompatibilityTag(
|
|||
// e.g. <META charset="ISO-8859-1">
|
||||
PRInt32 numOfAttributes = keys->Count();
|
||||
if ((numOfAttributes >= 3) &&
|
||||
(0 == nsCRT::strcasecmp((keys->StringAt(0))->get(), NS_LITERAL_STRING("charset").get())))
|
||||
(0 == Compare(*keys->StringAt(0), NS_LITERAL_STRING("charset"),
|
||||
nsCaseInsensitiveStringComparator())))
|
||||
{
|
||||
nsAutoString srcStr((values->StringAt(numOfAttributes-2))->get());
|
||||
PRInt32 err;
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include "nsObserverBase.h"
|
||||
#include "nsWeakReference.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
|
||||
|
||||
|
@ -93,7 +94,8 @@ NS_IMETHODIMP nsXMLEncodingObserver::Notify(
|
|||
const PRUnichar* nameArray[],
|
||||
const PRUnichar* valueArray[])
|
||||
{
|
||||
if(0 != nsCRT::strcasecmp(aTag, NS_LITERAL_STRING("?XML").get()))
|
||||
if(0 != Compare(nsDependentString(aTag), NS_LITERAL_STRING("?XML"),
|
||||
nsCaseInsensitiveStringComparator()))
|
||||
return NS_ERROR_ILLEGAL_VALUE;
|
||||
else
|
||||
return Notify(aDocumentID, numOfAttributes, nameArray, valueArray);
|
||||
|
@ -141,7 +143,8 @@ NS_IMETHODIMP nsXMLEncodingObserver::Notify(
|
|||
} else if(0==nsCRT::strcmp(nameArray[i], NS_LITERAL_STRING("charsetSource").get())) {
|
||||
bGotCurrentCharsetSource = PR_TRUE;
|
||||
charsetSourceStr = valueArray[i];
|
||||
} else if(0==nsCRT::strcasecmp(nameArray[i], NS_LITERAL_STRING("encoding").get())) {
|
||||
} else if(0==Compare(nsDependentString(nameArray[i]), NS_LITERAL_STRING("encoding"),
|
||||
nsCaseInsensitiveStringComparator())) {
|
||||
bGotEncoding = PR_TRUE;
|
||||
encoding = valueArray[i];
|
||||
}
|
||||
|
|
|
@ -39,6 +39,7 @@ REQUIRES = xpcom \
|
|||
intl \
|
||||
locale \
|
||||
chardet \
|
||||
unicharutil \
|
||||
necko \
|
||||
$(NULL)
|
||||
|
||||
|
|
|
@ -26,8 +26,8 @@ REQUIRES = xpcom \
|
|||
intl \
|
||||
locale \
|
||||
chardet \
|
||||
unicharutil \
|
||||
necko \
|
||||
pref \
|
||||
$(NULL)
|
||||
include <$(DEPTH)/config/config.mak>
|
||||
|
||||
|
@ -99,6 +99,7 @@ EXPORTS= \
|
|||
|
||||
LLIBS= \
|
||||
$(DIST)\lib\xpcom.lib \
|
||||
$(DIST)\lib\unicharutil_s.lib \
|
||||
$(LIBNSPR)
|
||||
|
||||
LCFLAGS = \
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
|
||||
#include "nsUConvDll.h"
|
||||
#include "nsReadableUtils.h"
|
||||
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsURLProperties.h"
|
||||
//==============================================================
|
||||
class nsCharsetAlias2 : public nsICharsetAlias
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
#include "nsIFrame.h"
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsVoidArray.h"
|
||||
#include "nsIUnicharInputStream.h"
|
||||
#include "nsHTMLIIDs.h"
|
||||
|
@ -186,6 +187,10 @@ PRBool AtomKey_base::Equals(const nsHashKey* aKey) const
|
|||
return PRBool (((AtomKey_base*)aKey)->mAtom == mAtom);
|
||||
}
|
||||
|
||||
// first try case-sensitive match
|
||||
if (((AtomKey_base*)aKey)->mAtom == mAtom)
|
||||
return PR_TRUE;
|
||||
|
||||
#ifdef DEBUG_HASH
|
||||
DebugHashCount(PR_FALSE);
|
||||
#endif
|
||||
|
@ -197,7 +202,9 @@ PRBool AtomKey_base::Equals(const nsHashKey* aKey) const
|
|||
const PRUnichar *theirStr = nsnull;
|
||||
theirAtom->GetUnicode(&theirStr);
|
||||
|
||||
return nsCRT::strcasecmp(myStr, theirStr) == 0;
|
||||
return Compare(nsDependentString(myStr),
|
||||
nsDependentString(theirStr),
|
||||
nsCaseInsensitiveStringComparator()) == 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -3367,7 +3374,9 @@ static PRBool ValueIncludes(const nsString& aValueList, const nsString& aValue,
|
|||
}
|
||||
}
|
||||
else {
|
||||
if (!nsCRT::strcasecmp(value, start)) {
|
||||
if (!Compare(nsDependentString(value),
|
||||
nsDependentString(start),
|
||||
nsCaseInsensitiveStringComparator())) {
|
||||
return PR_TRUE;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -57,6 +57,7 @@
|
|||
#include "nsIFrameManager.h"
|
||||
#include "nsMenuPopupFrame.h"
|
||||
#include "nsGUIEvent.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
|
||||
|
||||
//
|
||||
|
@ -699,7 +700,7 @@ nsMenuBarFrame::IsDisabled(nsIContent* aContent)
|
|||
{
|
||||
nsString disabled;
|
||||
aContent->GetAttr(kNameSpaceID_None, nsHTMLAtoms::disabled, disabled);
|
||||
if (disabled.EqualsWithConversion("true"))
|
||||
if (disabled.Equals(NS_LITERAL_STRING("true")))
|
||||
return PR_TRUE;
|
||||
return PR_FALSE;
|
||||
}
|
||||
|
|
|
@ -44,6 +44,7 @@ REQUIRES = xpcom \
|
|||
pref \
|
||||
necko \
|
||||
locale \
|
||||
unicharutil \
|
||||
webshell \
|
||||
uconv \
|
||||
msgbase \
|
||||
|
|
|
@ -34,14 +34,14 @@ REQUIRES = xpcom \
|
|||
pref \
|
||||
necko \
|
||||
locale \
|
||||
webshell \
|
||||
uconv \
|
||||
unicharutil \
|
||||
webshell \
|
||||
msgbase \
|
||||
msgbaseutil \
|
||||
mime \
|
||||
msgcompo \
|
||||
appcomps \
|
||||
raptor \
|
||||
gfx \
|
||||
content \
|
||||
mozldap \
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#include "nsIAbCard.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsMsgBaseCID.h"
|
||||
#include "nsMsgI18N.h"
|
||||
#include "nsIMsgIdentity.h"
|
||||
|
@ -107,7 +108,8 @@ PRBool nsAbAutoCompleteSession::ItsADuplicate(PRUnichar* fullAddrStr, nsIAutoCom
|
|||
rv = resultItem->GetValue(valueStr);
|
||||
if (NS_SUCCEEDED(rv) && !valueStr.IsEmpty())
|
||||
{
|
||||
if (nsCRT::strcasecmp(fullAddrStr, valueStr.get())==0)
|
||||
if (Compare(nsDependentString(fullAddrStr), valueStr,
|
||||
nsCaseInsensitiveStringComparator())==0)
|
||||
return PR_TRUE;
|
||||
}
|
||||
}
|
||||
|
@ -139,7 +141,7 @@ nsAbAutoCompleteSession::AddToResult(const PRUnichar* pNickNameStr,
|
|||
return;
|
||||
|
||||
nsAutoString aStr(pDisplayNameStr);
|
||||
aStr.AppendWithConversion('@');
|
||||
aStr.Append(PRUnichar('@'));
|
||||
aStr += mDefaultDomain;
|
||||
fullAddrStr = ToNewUnicode(aStr);
|
||||
}
|
||||
|
@ -184,9 +186,9 @@ nsAbAutoCompleteSession::AddToResult(const PRUnichar* pNickNameStr,
|
|||
// check this so we do not get a bogus entry "someName <>"
|
||||
if (pStr && pStr[0] != 0) {
|
||||
nsAutoString aStr(pDisplayNameStr);
|
||||
aStr.AppendWithConversion(" <");
|
||||
aStr.Append(NS_LITERAL_STRING(" <"));
|
||||
aStr += pStr;
|
||||
aStr.AppendWithConversion(">");
|
||||
aStr.Append(NS_LITERAL_STRING(">"));
|
||||
fullAddrStr = ToNewUnicode(aStr);
|
||||
}
|
||||
else
|
||||
|
@ -249,8 +251,25 @@ nsAbAutoCompleteSession::AddToResult(const PRUnichar* pNickNameStr,
|
|||
PR_Free(fullAddrStr);
|
||||
}
|
||||
|
||||
PRBool nsAbAutoCompleteSession::CheckEntry(nsAbAutoCompleteSearchString* searchStr, const PRUnichar* nickName, const PRUnichar* displayName,
|
||||
const PRUnichar* firstName, const PRUnichar* lastName, const PRUnichar* emailAddress, MatchType* matchType)
|
||||
static PRBool CommonPrefix(const PRUnichar *aString, const PRUnichar *aSubstr, PRInt32 aSubstrLen) {
|
||||
PRUint32 len = MinInt(aSubstrLen, nsCRT::strlen(aString));
|
||||
|
||||
if (len == 0) return PR_FALSE;
|
||||
|
||||
return (Compare(nsDependentString(aString, len),
|
||||
nsDependentString(aSubstr, len),
|
||||
nsCaseInsensitiveStringComparator()) == 0);
|
||||
}
|
||||
|
||||
|
||||
PRBool
|
||||
nsAbAutoCompleteSession::CheckEntry(nsAbAutoCompleteSearchString* searchStr,
|
||||
const PRUnichar* nickName,
|
||||
const PRUnichar* displayName,
|
||||
const PRUnichar* firstName,
|
||||
const PRUnichar* lastName,
|
||||
const PRUnichar* emailAddress,
|
||||
MatchType* matchType)
|
||||
{
|
||||
const PRUnichar * fullString;
|
||||
PRUint32 fullStringLen;
|
||||
|
@ -267,70 +286,80 @@ PRBool nsAbAutoCompleteSession::CheckEntry(nsAbAutoCompleteSearchString* searchS
|
|||
}
|
||||
|
||||
// First check for a Nickname exact match
|
||||
if (nickName && nsCRT::strcasecmp(fullString, nickName) == 0)
|
||||
if (nickName && Compare(nsDependentString(fullString),
|
||||
nsDependentString(nickName),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
*matchType = NICKNAME_EXACT_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a display Name exact match
|
||||
if (displayName && nsCRT::strcasecmp(fullString, displayName) == 0)
|
||||
if (displayName && Compare(nsDependentString(fullString),
|
||||
nsDependentString(displayName),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
*matchType = NAME_EXACT_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a fisrt Name exact match
|
||||
if (firstName && nsCRT::strcasecmp(fullString, firstName) == 0)
|
||||
if (firstName && Compare(nsDependentString(fullString),
|
||||
nsDependentString(firstName),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
*matchType = NAME_EXACT_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a last Name exact match
|
||||
if (lastName && nsCRT::strcasecmp(fullString, lastName) == 0)
|
||||
if (lastName && Compare(nsDependentString(fullString),
|
||||
nsDependentString(lastName),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
*matchType = NAME_EXACT_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a Email exact match
|
||||
if (emailAddress && nsCRT::strcasecmp(fullString, emailAddress) == 0)
|
||||
if (emailAddress && Compare(nsDependentString(fullString),
|
||||
nsDependentString(emailAddress),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
*matchType = EMAIL_EXACT_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a NickName partial match
|
||||
if (nickName && nsCRT::strncasecmp(fullString, nickName, fullStringLen) == 0)
|
||||
if (nickName && CommonPrefix(nickName, fullString, fullStringLen))
|
||||
{
|
||||
*matchType = NICKNAME_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a display Name partial match
|
||||
if (displayName && nsCRT::strncasecmp(fullString, displayName, fullStringLen) == 0)
|
||||
if (displayName && CommonPrefix(displayName, fullString, fullStringLen))
|
||||
{
|
||||
*matchType = NAME_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a first Name partial match
|
||||
if (firstName && nsCRT::strncasecmp(fullString, firstName, fullStringLen) == 0)
|
||||
if (firstName && CommonPrefix(firstName, fullString, fullStringLen))
|
||||
{
|
||||
*matchType = NAME_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a last Name partial match
|
||||
if (lastName && nsCRT::strncasecmp(fullString, lastName, fullStringLen) == 0)
|
||||
if (lastName && CommonPrefix(lastName, fullString, fullStringLen))
|
||||
{
|
||||
*matchType = NAME_MATCH;
|
||||
return PR_TRUE;
|
||||
}
|
||||
|
||||
// Then check for a Email partial match
|
||||
if (emailAddress && nsCRT::strncasecmp(fullString, emailAddress, fullStringLen) == 0)
|
||||
if (emailAddress && CommonPrefix(emailAddress, fullString, fullStringLen))
|
||||
{
|
||||
*matchType = EMAIL_MATCH;
|
||||
return PR_TRUE;
|
||||
|
@ -339,11 +368,13 @@ PRBool nsAbAutoCompleteSession::CheckEntry(nsAbAutoCompleteSearchString* searchS
|
|||
//If we have a muti-part search string, look for a partial match with first name and last name or reverse
|
||||
if (searchStr->mFirstPartLen && searchStr->mSecondPartLen)
|
||||
{
|
||||
if (((firstName && nsCRT::strncasecmp(searchStr->mFirstPart, firstName, searchStr->mFirstPartLen) == 0) &&
|
||||
(lastName && nsCRT::strncasecmp(searchStr->mSecondPart, lastName, searchStr->mSecondPartLen) == 0)) ||
|
||||
((lastName && nsCRT::strncasecmp(searchStr->mFirstPart, lastName, searchStr->mFirstPartLen) == 0) &&
|
||||
(firstName && nsCRT::strncasecmp(searchStr->mSecondPart, firstName, searchStr->mSecondPartLen) == 0))
|
||||
)
|
||||
if (((firstName && CommonPrefix(firstName, searchStr->mFirstPart, searchStr->mFirstPartLen)) &&
|
||||
(lastName && CommonPrefix(lastName, searchStr->mSecondPart, searchStr->mSecondPartLen))) ||
|
||||
|
||||
|
||||
((lastName && CommonPrefix(lastName, searchStr->mFirstPart, searchStr->mFirstPartLen)) &&
|
||||
(firstName && CommonPrefix(firstName, searchStr->mSecondPart, searchStr->mSecondPartLen)))
|
||||
)
|
||||
{
|
||||
*matchType = NAME_MATCH;
|
||||
return PR_TRUE;
|
||||
|
@ -516,7 +547,8 @@ nsresult nsAbAutoCompleteSession::SearchPreviousResults(nsAbAutoCompleteSearchSt
|
|||
return NS_ERROR_FAILURE;
|
||||
|
||||
PRUint32 prevSearchStrLen = nsCRT::strlen(prevSearchString);
|
||||
if (searchStr->mFullStringLen < prevSearchStrLen || nsCRT::strncasecmp(searchStr->mFullString, prevSearchString, prevSearchStrLen != 0))
|
||||
if (searchStr->mFullStringLen < prevSearchStrLen ||
|
||||
CommonPrefix(searchStr->mFullString, prevSearchString, prevSearchStrLen))
|
||||
return NS_ERROR_ABORT;
|
||||
|
||||
nsCOMPtr<nsISupportsArray> array;
|
||||
|
|
|
@ -47,6 +47,7 @@ REQUIRES = xpcom \
|
|||
content \
|
||||
mailnews \
|
||||
locale \
|
||||
unicharutil \
|
||||
msgbaseutil \
|
||||
webshell \
|
||||
txmgr \
|
||||
|
|
|
@ -28,6 +28,8 @@ REQUIRES = xpcom \
|
|||
appshell \
|
||||
appcomps \
|
||||
uconv \
|
||||
locale \
|
||||
unicharutil \
|
||||
intl \
|
||||
htmlparser \
|
||||
widget \
|
||||
|
@ -36,7 +38,6 @@ REQUIRES = xpcom \
|
|||
editor \
|
||||
layout \
|
||||
mailnews \
|
||||
locale \
|
||||
msgbaseutil \
|
||||
webshell \
|
||||
txmgr \
|
||||
|
|
|
@ -54,6 +54,7 @@
|
|||
#include "plstr.h"
|
||||
#include "nsString.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nscore.h"
|
||||
#include "nsCRT.h" // for nsCRT::strtok
|
||||
#include "prprf.h"
|
||||
|
@ -64,7 +65,6 @@
|
|||
#include "nsIURL.h"
|
||||
#include "nsNetCID.h"
|
||||
#include "nsISmtpService.h"
|
||||
#include "nsString.h"
|
||||
#include "nsIMsgBiffManager.h"
|
||||
#include "nsIObserverService.h"
|
||||
#include "nsIMsgMailSession.h"
|
||||
|
@ -238,7 +238,7 @@ NS_IMETHODIMP nsMsgAccountManager::Observe(nsISupports *aSubject, const PRUnicha
|
|||
nsAutoString shutdownString;
|
||||
shutdownString.AssignWithConversion(NS_XPCOM_SHUTDOWN_OBSERVER_ID);
|
||||
nsAutoString quitApplicationString;
|
||||
quitApplicationString.AssignWithConversion("quit-application");
|
||||
quitApplicationString.Assign(NS_LITERAL_STRING("quit-application"));
|
||||
nsAutoString offlineStatusChangedString(NS_LITERAL_STRING("network:offline-status-changed"));
|
||||
NS_NAMED_LITERAL_STRING(sessionLogoutString, "session-logout");
|
||||
NS_NAMED_LITERAL_STRING(beforeProfileChangeString, "profile-before-change");
|
||||
|
@ -1041,7 +1041,7 @@ PRBool PR_CALLBACK nsMsgAccountManager::cleanupOnExit(nsHashKey *aKey, void *aDa
|
|||
nsCOMPtr<nsIMsgFolder>inboxFolder = do_QueryInterface(aSupport);
|
||||
nsXPIDLString folderName;
|
||||
inboxFolder->GetName(getter_Copies(folderName));
|
||||
if (folderName && nsCRT::strcasecmp(folderName, NS_LITERAL_STRING("INBOX").get()) ==0)
|
||||
if (folderName && Compare(folderName, NS_LITERAL_STRING("INBOX"), nsCaseInsensitiveStringComparator()) ==0)
|
||||
{
|
||||
rv1 = inboxFolder->Compact(urlListener, nsnull /* msgwindow */);
|
||||
if (NS_SUCCEEDED(rv1))
|
||||
|
|
|
@ -118,6 +118,7 @@ CPP_OBJS= \
|
|||
LLIBS= \
|
||||
$(DIST)\lib\xpcom.lib \
|
||||
$(DIST)\lib\rdfutil_s.lib \
|
||||
$(DIST)\lib\unicharutil_s.lib \
|
||||
$(LIBNSPR) \
|
||||
$(NULL)
|
||||
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include "nsIServiceManager.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsAutoLock.h"
|
||||
#include "nsMemory.h"
|
||||
|
@ -221,17 +222,17 @@ nsMsgFolder::initializeStrings()
|
|||
getter_AddRefs(bundle));
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
bundle->GetStringFromName(NS_ConvertASCIItoUCS2("inboxFolderName").get(),
|
||||
bundle->GetStringFromName(NS_LITERAL_STRING("inboxFolderName").get(),
|
||||
&kInboxName);
|
||||
bundle->GetStringFromName(NS_ConvertASCIItoUCS2("trashFolderName").get(),
|
||||
bundle->GetStringFromName(NS_LITERAL_STRING("trashFolderName").get(),
|
||||
&kTrashName);
|
||||
bundle->GetStringFromName(NS_ConvertASCIItoUCS2("sentFolderName").get(),
|
||||
bundle->GetStringFromName(NS_LITERAL_STRING("sentFolderName").get(),
|
||||
&kSentName);
|
||||
bundle->GetStringFromName(NS_ConvertASCIItoUCS2("draftsFolderName").get(),
|
||||
bundle->GetStringFromName(NS_LITERAL_STRING("draftsFolderName").get(),
|
||||
&kDraftsName);
|
||||
bundle->GetStringFromName(NS_ConvertASCIItoUCS2("templatesFolderName").get(),
|
||||
bundle->GetStringFromName(NS_LITERAL_STRING("templatesFolderName").get(),
|
||||
&kTemplatesName);
|
||||
bundle->GetStringFromName(NS_ConvertASCIItoUCS2("unsentFolderName").get(),
|
||||
bundle->GetStringFromName(NS_LITERAL_STRING("unsentFolderName").get(),
|
||||
&kUnsentName);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -916,7 +917,8 @@ NS_IMETHODIMP nsMsgFolder::GetChildNamed(const char *name, nsISupports ** aChild
|
|||
|
||||
rv = folder->GetName(getter_Copies(folderName));
|
||||
// case-insensitive compare is probably LCD across OS filesystems
|
||||
if (NS_SUCCEEDED(rv) && nsCRT::strcasecmp(folderName, uniName.get()) == 0)
|
||||
if (NS_SUCCEEDED(rv) && Compare(folderName, uniName,
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
*aChild = folder;
|
||||
NS_ADDREF(*aChild);
|
||||
|
@ -2071,7 +2073,7 @@ NS_IMETHODIMP nsMsgFolder::GetNewMessagesNotificationDescription(PRUnichar * *aD
|
|||
// put this test here because we don't want to just put "folder name on"
|
||||
// in case the above failed
|
||||
if (!(mFlags & MSG_FOLDER_FLAG_INBOX))
|
||||
description.AppendWithConversion(" on ");
|
||||
description.Append(NS_LITERAL_STRING(" on "));
|
||||
description.Append(serverName);
|
||||
}
|
||||
}
|
||||
|
@ -2455,7 +2457,7 @@ nsresult nsMsgFolder::NotifyFolderEvent(nsIAtom* aEvent)
|
|||
nsresult
|
||||
nsGetMailFolderSeparator(nsString& result)
|
||||
{
|
||||
result.AssignWithConversion(".sbd");
|
||||
result.Assign(NS_LITERAL_STRING(".sbd"));
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -41,6 +41,7 @@ REQUIRES = xpcom \
|
|||
pref \
|
||||
intl \
|
||||
locale \
|
||||
unicharutil \
|
||||
layout \
|
||||
content \
|
||||
msgbaseutil \
|
||||
|
|
|
@ -34,6 +34,8 @@ REQUIRES = xpcom \
|
|||
pref \
|
||||
intl \
|
||||
locale \
|
||||
uconv \
|
||||
unicharutil \
|
||||
layout \
|
||||
msgbaseutil \
|
||||
msgdb \
|
||||
|
@ -41,7 +43,6 @@ REQUIRES = xpcom \
|
|||
appshell \
|
||||
msgimap \
|
||||
msgnews \
|
||||
uconv \
|
||||
docshell \
|
||||
webshell \
|
||||
addrbook \
|
||||
|
@ -55,7 +56,6 @@ REQUIRES = xpcom \
|
|||
mimetype \
|
||||
windowwatcher \
|
||||
content \
|
||||
raptor \
|
||||
$(NULL)
|
||||
|
||||
include <$(DEPTH)\config\config.mak>
|
||||
|
|
|
@ -106,6 +106,7 @@
|
|||
#include "nsIMsgImapMailFolder.h"
|
||||
#include "nsImapCore.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsNetUtil.h"
|
||||
#include "nsMsgSimulateError.h"
|
||||
|
||||
|
@ -1039,7 +1040,7 @@ nsresult nsMsgCompose::SetEditor(nsIEditorShell * aEditor)
|
|||
|
||||
// Now, lets init the editor here!
|
||||
// Just get a blank editor started...
|
||||
m_editor->LoadUrl(NS_ConvertASCIItoUCS2("about:blank").get());
|
||||
m_editor->LoadUrl(NS_LITERAL_STRING("about:blank").get());
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -1783,7 +1784,7 @@ NS_IMETHODIMP QuotingOutputStreamListener::OnDataAvailable(nsIRequest *request,
|
|||
if (NS_SUCCEEDED(rv) && numWritten > 0)
|
||||
{
|
||||
PRUnichar *u = nsnull;
|
||||
nsAutoString fmt; fmt.AssignWithConversion("%s");
|
||||
nsAutoString fmt; fmt.Assign(NS_LITERAL_STRING("%s"));
|
||||
|
||||
u = nsTextFormatter::smprintf(fmt.get(), newBuf); // this converts UTF-8 to UCS-2
|
||||
if (u)
|
||||
|
@ -2102,7 +2103,9 @@ nsresult nsMsgComposeSendListener::OnStopSending(const char *aMsgID, nsresult aS
|
|||
{
|
||||
if (fieldsFCC && *fieldsFCC)
|
||||
{
|
||||
if (nsCRT::strcasecmp(fieldsFCC, "nocopy://") == 0)
|
||||
if (Compare(nsDependentString(fieldsFCC),
|
||||
NS_LITERAL_STRING("nocopy://"),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
compose->NotifyStateListeners(eComposeProcessDone, NS_OK);
|
||||
if (progress)
|
||||
|
@ -3577,7 +3580,7 @@ nsresult nsMsgCompose::TagConvertible(nsIDOMNode *node, PRInt32 *_retval)
|
|||
if (NS_SUCCEEDED(node->GetAttributes(getter_AddRefs(pAttributes)))
|
||||
&& pAttributes)
|
||||
{
|
||||
nsAutoString typeName; typeName.AssignWithConversion("type");
|
||||
nsAutoString typeName; typeName.Assign(NS_LITERAL_STRING("type"));
|
||||
if (NS_SUCCEEDED(pAttributes->GetNamedItem(typeName,
|
||||
getter_AddRefs(pItem)))
|
||||
&& pItem)
|
||||
|
@ -3612,7 +3615,7 @@ nsresult nsMsgCompose::TagConvertible(nsIDOMNode *node, PRInt32 *_retval)
|
|||
&& pAttributes)
|
||||
{
|
||||
nsAutoString className;
|
||||
className.AssignWithConversion("class");
|
||||
className.Assign(NS_LITERAL_STRING("class"));
|
||||
if (NS_SUCCEEDED(pAttributes->GetNamedItem(className,
|
||||
getter_AddRefs(pItem)))
|
||||
&& pItem)
|
||||
|
@ -3638,7 +3641,7 @@ nsresult nsMsgCompose::TagConvertible(nsIDOMNode *node, PRInt32 *_retval)
|
|||
if (NS_SUCCEEDED(node->GetAttributes(getter_AddRefs(pAttributes)))
|
||||
&& pAttributes)
|
||||
{
|
||||
nsAutoString hrefName; hrefName.AssignWithConversion("href");
|
||||
nsAutoString hrefName; hrefName.Assign(NS_LITERAL_STRING("href"));
|
||||
if (NS_SUCCEEDED(pAttributes->GetNamedItem(hrefName,
|
||||
getter_AddRefs(pItem)))
|
||||
&& pItem)
|
||||
|
@ -3677,7 +3680,7 @@ nsresult nsMsgCompose::TagConvertible(nsIDOMNode *node, PRInt32 *_retval)
|
|||
&& pAttributes)
|
||||
{
|
||||
nsAutoString styleName;
|
||||
styleName.AssignWithConversion("style");
|
||||
styleName.Assign(NS_LITERAL_STRING("style"));
|
||||
if (NS_SUCCEEDED(pAttributes->GetNamedItem(styleName,
|
||||
getter_AddRefs(pItem)))
|
||||
&& pItem)
|
||||
|
@ -3792,7 +3795,7 @@ nsresult nsMsgCompose::SetSignature(nsIMsgIdentity *identity)
|
|||
{
|
||||
nsAutoString attributeName;
|
||||
nsAutoString attributeValue;
|
||||
attributeName.AssignWithConversion("class");
|
||||
attributeName.Assign(NS_LITERAL_STRING("class"));
|
||||
|
||||
rv = element->GetAttribute(attributeName, attributeValue);
|
||||
if (NS_SUCCEEDED(rv))
|
||||
|
@ -3813,7 +3816,7 @@ nsresult nsMsgCompose::SetSignature(nsIMsgIdentity *identity)
|
|||
if (tempNode)
|
||||
{
|
||||
tempNode->GetLocalName(tagLocalName);
|
||||
if (tagLocalName.EqualsWithConversion("BR"))
|
||||
if (tagLocalName.Equals(NS_LITERAL_STRING("BR")))
|
||||
editor->DeleteNode(tempNode);
|
||||
}
|
||||
editor->EndTransaction();
|
||||
|
@ -3834,7 +3837,7 @@ nsresult nsMsgCompose::SetSignature(nsIMsgIdentity *identity)
|
|||
switch (searchState)
|
||||
{
|
||||
case 0:
|
||||
if (nodeType == nsIDOMNode::ELEMENT_NODE && tagLocalName.EqualsWithConversion("BR"))
|
||||
if (nodeType == nsIDOMNode::ELEMENT_NODE && tagLocalName.Equals(NS_LITERAL_STRING("BR")))
|
||||
searchState = 1;
|
||||
break;
|
||||
|
||||
|
@ -3844,11 +3847,11 @@ nsresult nsMsgCompose::SetSignature(nsIMsgIdentity *identity)
|
|||
{
|
||||
nsString nodeValue;
|
||||
node->GetNodeValue(nodeValue);
|
||||
if (nodeValue.EqualsWithConversion("-- "))
|
||||
if (nodeValue.Equals(NS_LITERAL_STRING("-- ")))
|
||||
searchState = 2;
|
||||
}
|
||||
else
|
||||
if (nodeType == nsIDOMNode::ELEMENT_NODE && tagLocalName.EqualsWithConversion("BR"))
|
||||
if (nodeType == nsIDOMNode::ELEMENT_NODE && tagLocalName.Equals(NS_LITERAL_STRING("BR")))
|
||||
{
|
||||
searchState = 1;
|
||||
break;
|
||||
|
@ -3856,7 +3859,7 @@ nsresult nsMsgCompose::SetSignature(nsIMsgIdentity *identity)
|
|||
break;
|
||||
|
||||
case 2:
|
||||
if (nodeType == nsIDOMNode::ELEMENT_NODE && tagLocalName.EqualsWithConversion("BR"))
|
||||
if (nodeType == nsIDOMNode::ELEMENT_NODE && tagLocalName.Equals(NS_LITERAL_STRING("BR")))
|
||||
searchState = 3;
|
||||
else
|
||||
searchState = 0;
|
||||
|
|
|
@ -39,6 +39,7 @@ REQUIRES = xpcom \
|
|||
necko \
|
||||
msgdb \
|
||||
uconv \
|
||||
unicharutil \
|
||||
mime \
|
||||
pref \
|
||||
intl \
|
||||
|
|
|
@ -32,6 +32,7 @@ REQUIRES = xpcom \
|
|||
necko \
|
||||
msgdb \
|
||||
uconv \
|
||||
unicharutil \
|
||||
mime \
|
||||
pref \
|
||||
intl \
|
||||
|
|
|
@ -78,6 +78,7 @@
|
|||
#include "nsSpecialSystemDirectory.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsIImapFlagAndUidState.h"
|
||||
#include "nsIMessenger.h"
|
||||
#include "nsIMsgSearchAdapter.h"
|
||||
|
@ -677,12 +678,12 @@ NS_IMETHODIMP nsImapMailFolder::CreateSubfolder(const PRUnichar* folderName, nsI
|
|||
nsresult rv = NS_ERROR_NULL_POINTER;
|
||||
if (!folderName) return rv;
|
||||
|
||||
if ( nsCRT::strcasecmp(folderName,"Trash") == 0 ) // Trash , a special folder
|
||||
if ( Compare(nsDependentString(folderName),NS_LITERAL_STRING("Trash"),nsCaseInsensitiveStringComparator()) == 0 ) // Trash , a special folder
|
||||
{
|
||||
AlertSpecialFolderExists(msgWindow);
|
||||
return NS_MSG_FOLDER_EXISTS;
|
||||
}
|
||||
else if ( nsCRT::strcasecmp(folderName,"Inbox") == 0 ) // Inbox, a special folder
|
||||
else if ( Compare(nsDependentString(folderName),NS_LITERAL_STRING("Inbox"),nsCaseInsensitiveStringComparator()) == 0 ) // Inbox, a special folder
|
||||
{
|
||||
AlertSpecialFolderExists(msgWindow);
|
||||
return NS_MSG_FOLDER_EXISTS;
|
||||
|
@ -3684,7 +3685,7 @@ PRBool nsImapMailFolder::ShowDeletedMessages()
|
|||
{
|
||||
nsXPIDLString folderName;
|
||||
GetName(getter_Copies(folderName));
|
||||
if (!nsCRT::strncasecmp(folderName, convertedName, nsCRT::strlen(convertedName)))
|
||||
if (!Compare(folderName, convertedName, nsCaseInsensitiveStringComparator()))
|
||||
showDeleted = PR_TRUE;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -39,6 +39,7 @@ REQUIRES = xpcom \
|
|||
msgdb \
|
||||
rdf \
|
||||
intl \
|
||||
unicharutil \
|
||||
mime \
|
||||
dom \
|
||||
rdfutil \
|
||||
|
|
|
@ -40,6 +40,7 @@ REQUIRES = xpcom \
|
|||
msgimap \
|
||||
chrome \
|
||||
nkcache \
|
||||
unicharutil \
|
||||
$(NULL)
|
||||
|
||||
include <$(DEPTH)\config\config.mak>
|
||||
|
|
|
@ -76,6 +76,7 @@
|
|||
#include "nsMsgLocalCID.h"
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsLocalFolderSummarySpec.h"
|
||||
#include "nsMsgUtils.h"
|
||||
#include "nsICopyMsgStreamListener.h"
|
||||
|
@ -296,7 +297,7 @@ NS_IMETHODIMP nsMsgLocalMailFolder::AddSubfolder(nsAutoString *name,
|
|||
else if (name->EqualsIgnoreCase(nsAutoString(kTrashName)))
|
||||
flags |= MSG_FOLDER_FLAG_TRASH;
|
||||
else if (name->EqualsIgnoreCase(nsAutoString(kUnsentName))
|
||||
|| name->CompareWithConversion("Outbox", PR_TRUE) == 0)
|
||||
|| Compare(*name, NS_LITERAL_STRING("Outbox"), nsCaseInsensitiveStringComparator()) == 0)
|
||||
flags |= MSG_FOLDER_FLAG_QUEUE;
|
||||
#if 0
|
||||
// the logic for this has been moved into
|
||||
|
@ -767,21 +768,20 @@ nsresult
|
|||
nsMsgLocalMailFolder::CheckIfFolderExists(const PRUnichar *folderName, nsFileSpec &path, nsIMsgWindow *msgWindow)
|
||||
{
|
||||
nsresult rv = NS_OK;
|
||||
char *leafName=nsnull;
|
||||
nsAutoString leafName;
|
||||
for (nsDirectoryIterator dir(path, PR_FALSE); dir.Exists(); dir++)
|
||||
{
|
||||
nsFileSpec currentFolderPath = dir.Spec();
|
||||
leafName = currentFolderPath.GetLeafName();
|
||||
if (leafName && nsCRT::strcasecmp(folderName,leafName) == 0)
|
||||
currentFolderPath.GetLeafName(leafName);
|
||||
if (!leafName.IsEmpty() &&
|
||||
Compare(nsDependentString(folderName), leafName,
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
if (msgWindow)
|
||||
AlertFolderExists(msgWindow);
|
||||
PL_strfree(leafName);
|
||||
return NS_MSG_FOLDER_EXISTS;
|
||||
}
|
||||
}
|
||||
if (leafName)
|
||||
PL_strfree(leafName);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
|
|
@ -37,6 +37,7 @@ REQUIRES = xpcom \
|
|||
js \
|
||||
necko \
|
||||
uconv \
|
||||
unicharutil \
|
||||
msgcompose \
|
||||
editor \
|
||||
dom \
|
||||
|
|
|
@ -28,6 +28,8 @@ REQUIRES = xpcom \
|
|||
js \
|
||||
necko \
|
||||
uconv \
|
||||
chardet \
|
||||
unicharutil \
|
||||
msgcompo \
|
||||
editor \
|
||||
dom \
|
||||
|
@ -36,7 +38,6 @@ REQUIRES = xpcom \
|
|||
exthandler \
|
||||
mailnews \
|
||||
msgdb \
|
||||
chardet \
|
||||
caps \
|
||||
mimetype \
|
||||
uriloader \
|
||||
|
|
|
@ -52,6 +52,7 @@
|
|||
#include "nsIURL.h"
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsIServiceManager.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsMemory.h"
|
||||
|
@ -448,7 +449,7 @@ nsStreamConverter::DetermineOutputFormat(const char *url, nsMimeOutputType *aNe
|
|||
// or text/html emitter.
|
||||
// check the desired output content type that was passed into AsyncConvertData.
|
||||
|
||||
if (mDesiredOutputType && nsCRT::strcasecmp(mDesiredOutputType, "application/vnd.mozilla.xul+xml") == 0)
|
||||
if (mDesiredOutputType && Compare(nsDependentString(mDesiredOutputType), NS_LITERAL_STRING("application/vnd.mozilla.xul+xml"),nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
CRTFREEIF(mOutputFormat);
|
||||
mOutputFormat = nsCRT::strdup("application/vnd.mozilla.xul+xml");
|
||||
|
|
|
@ -37,6 +37,7 @@ REQUIRES = xpcom \
|
|||
content \
|
||||
htmlparser \
|
||||
js \
|
||||
unicharutil \
|
||||
$(NULL)
|
||||
|
||||
CPPSRCS = \
|
||||
|
|
|
@ -26,6 +26,7 @@ LCFLAGS=
|
|||
MODULE=rdf
|
||||
LIBRARY_NAME=rdfbase_s
|
||||
REQUIRES = xpcom \
|
||||
unicharutil \
|
||||
string \
|
||||
rdfutil \
|
||||
htmlparser \
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
#include "nsRDFCID.h"
|
||||
#include "nsString.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "prtime.h"
|
||||
#include "rdfutil.h"
|
||||
|
||||
|
|
|
@ -33,6 +33,7 @@ REQUIRES = xpcom \
|
|||
rdf \
|
||||
pref \
|
||||
necko \
|
||||
unicharutil \
|
||||
$(NULL)
|
||||
|
||||
CPPSRCS = nsUrlbarHistory.cpp
|
||||
|
|
|
@ -26,6 +26,7 @@ REQUIRES = xpcom \
|
|||
pref \
|
||||
necko \
|
||||
appcomps \
|
||||
unicharutil \
|
||||
$(NULL)
|
||||
LIBRARY_NAME=urlbarhistory_s
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
// Local Includes
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsUrlbarHistory.h"
|
||||
|
||||
// Helper Classes
|
||||
|
@ -332,7 +333,10 @@ nsUrlbarHistory::SearchPreviousResults(const PRUnichar *searchStr, nsIAutoComple
|
|||
return NS_ERROR_FAILURE;
|
||||
|
||||
PRUint32 prevSearchStrLen = nsCRT::strlen(prevSearchString);
|
||||
if (searchStrLen < prevSearchStrLen || nsCRT::strncasecmp(searchStr, prevSearchString, prevSearchStrLen != 0))
|
||||
if (searchStrLen < prevSearchStrLen ||
|
||||
Compare(nsDependentString(searchStr),
|
||||
nsDependentString(prevSearchString, prevSearchStrLen),
|
||||
nsCaseInsensitiveStringComparator())!= 0)
|
||||
return NS_ERROR_ABORT;
|
||||
|
||||
nsCOMPtr<nsISupportsArray> array;
|
||||
|
@ -361,7 +365,9 @@ nsUrlbarHistory::SearchPreviousResults(const PRUnichar *searchStr, nsIAutoComple
|
|||
|
||||
if (itemValue.IsEmpty())
|
||||
continue;
|
||||
if (nsCRT::strncasecmp(searchStr, itemValue.get(), searchStrLen) == 0)
|
||||
if (Compare(nsDependentString(searchStr, searchStrLen),
|
||||
itemValue,
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
continue;
|
||||
|
||||
}
|
||||
|
@ -617,7 +623,8 @@ nsUrlbarHistory::CheckItemAvailability(const PRUnichar * aItem, nsIAutoCompleteR
|
|||
resultItem->GetValue(itemValue);
|
||||
// Using nsIURI to do comparisons didn't quite work out.
|
||||
// So use nsCRT methods
|
||||
if (nsCRT::strcasecmp(itemValue.get(), aItem) == 0)
|
||||
if (Compare(itemValue, nsDependentString(aItem),
|
||||
nsCaseInsensitiveStringComparator()) == 0)
|
||||
{
|
||||
//printf("In CheckItemAvailability. Item already found\n");
|
||||
*aResult = PR_TRUE;
|
||||
|
|
Загрузка…
Ссылка в новой задаче