зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1145395 - Pass Element& to nsHTMLEditor::RemoveElementIfNoStyleOrIdOrClass; r=ehsan
This commit is contained in:
Родитель
6c69218669
Коммит
f1fd90a52d
|
@ -725,7 +725,7 @@ protected:
|
|||
nsAString* outValue,
|
||||
bool aCheckDefaults = true);
|
||||
bool HasStyleOrIdOrClass(mozilla::dom::Element* aElement);
|
||||
nsresult RemoveElementIfNoStyleOrIdOrClass(nsIDOMNode* aElement);
|
||||
nsresult RemoveElementIfNoStyleOrIdOrClass(mozilla::dom::Element& aElement);
|
||||
|
||||
// Whether the outer window of the DOM event target has focus or not.
|
||||
bool OurWindowHasFocus();
|
||||
|
|
|
@ -801,7 +801,7 @@ nsresult nsHTMLEditor::RemoveStyleInside(nsIDOMNode *aNode,
|
|||
bool isSet;
|
||||
mHTMLCSSUtils->IsCSSEquivalentToHTMLInlineStyleSet(aNode, aProperty,
|
||||
aAttribute, isSet, propertyValue, nsHTMLCSSUtils::eSpecified);
|
||||
if (isSet) {
|
||||
if (isSet && content->IsElement()) {
|
||||
// yes, tmp has the corresponding css declarations in its style attribute
|
||||
// let's remove them
|
||||
mHTMLCSSUtils->RemoveCSSEquivalentToHTMLStyle(aNode,
|
||||
|
@ -811,7 +811,7 @@ nsresult nsHTMLEditor::RemoveStyleInside(nsIDOMNode *aNode,
|
|||
false);
|
||||
// remove the node if it is a span or font, if its style attribute is
|
||||
// empty or absent, and if it does not have a class nor an id
|
||||
RemoveElementIfNoStyleOrIdOrClass(aNode);
|
||||
RemoveElementIfNoStyleOrIdOrClass(*content->AsElement());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1792,17 +1792,14 @@ nsHTMLEditor::HasStyleOrIdOrClass(dom::Element* aElement)
|
|||
}
|
||||
|
||||
nsresult
|
||||
nsHTMLEditor::RemoveElementIfNoStyleOrIdOrClass(nsIDOMNode* aElement)
|
||||
nsHTMLEditor::RemoveElementIfNoStyleOrIdOrClass(dom::Element& aElement)
|
||||
{
|
||||
nsCOMPtr<dom::Element> element = do_QueryInterface(aElement);
|
||||
NS_ENSURE_TRUE(element, NS_ERROR_NULL_POINTER);
|
||||
|
||||
// early way out if node is not the right kind of element
|
||||
if ((!element->IsHTMLElement(nsGkAtoms::span) &&
|
||||
!element->IsHTMLElement(nsGkAtoms::font)) ||
|
||||
HasStyleOrIdOrClass(element)) {
|
||||
if ((!aElement.IsHTMLElement(nsGkAtoms::span) &&
|
||||
!aElement.IsHTMLElement(nsGkAtoms::font)) ||
|
||||
HasStyleOrIdOrClass(&aElement)) {
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
return RemoveContainer(element);
|
||||
return RemoveContainer(&aElement);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче