зеркало из https://github.com/mozilla/gecko-dev.git
Bug 669155 - animation of filterRes does not result in layout being refreshed. r=jwatt
This commit is contained in:
Родитель
6ba6b675bd
Коммит
2f1b8250ad
|
@ -242,22 +242,35 @@ nsSVGFilterElement::GetStringInfo()
|
|||
NS_ARRAY_LENGTH(sStringInfo));
|
||||
}
|
||||
|
||||
void
|
||||
nsSVGFilterElement::DidAnimateLength(PRUint8 aAttrEnum)
|
||||
inline static void DidAnimateAttr(nsSVGFilterElement *aFilterElement)
|
||||
{
|
||||
// nsSVGFilterFrame does not implement a useful AttributeChanged
|
||||
nsIFrame* frame = GetPrimaryFrame();
|
||||
// nsSVGFilterFrame doesn't implement a useful AttributeChanged
|
||||
nsIFrame* frame = aFilterElement->GetPrimaryFrame();
|
||||
if (frame) {
|
||||
nsSVGEffects::InvalidateRenderingObservers(frame);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
nsSVGFilterElement::DidAnimateLength(PRUint8 aAttrEnum)
|
||||
{
|
||||
DidAnimateAttr(this);
|
||||
}
|
||||
|
||||
void
|
||||
nsSVGFilterElement::DidAnimateIntegerPair(PRUint8 aAttrEnum)
|
||||
{
|
||||
DidAnimateAttr(this);
|
||||
}
|
||||
|
||||
void
|
||||
nsSVGFilterElement::DidAnimateEnum(PRUint8 aAttrEnum)
|
||||
{
|
||||
// nsSVGFilterFrame does not implement a useful AttributeChanged
|
||||
nsIFrame* frame = GetPrimaryFrame();
|
||||
if (frame) {
|
||||
nsSVGEffects::InvalidateRenderingObservers(frame);
|
||||
}
|
||||
DidAnimateAttr(this);
|
||||
}
|
||||
|
||||
void
|
||||
nsSVGFilterElement::DidAnimateString(PRUint8 aAttrEnum)
|
||||
{
|
||||
DidAnimateAttr(this);
|
||||
}
|
||||
|
|
|
@ -89,7 +89,9 @@ protected:
|
|||
virtual StringAttributesInfo GetStringInfo();
|
||||
|
||||
virtual void DidAnimateLength(PRUint8 aAttrEnum);
|
||||
virtual void DidAnimateIntegerPair(PRUint8 aAttrEnum);
|
||||
virtual void DidAnimateEnum(PRUint8 aAttrEnum);
|
||||
virtual void DidAnimateString(PRUint8 aAttrEnum);
|
||||
|
||||
enum { X, Y, WIDTH, HEIGHT };
|
||||
nsSVGLength2 mLengthAttributes[4];
|
||||
|
|
|
@ -310,7 +310,8 @@ inline static void DidAnimateAttr(Element *aFilterPrimitive)
|
|||
}
|
||||
}
|
||||
|
||||
inline static void DidAnimateAttrViaParent(Element *aFilterPrimitive) {
|
||||
inline static void DidAnimateAttrViaParent(Element *aFilterPrimitive)
|
||||
{
|
||||
// No frame, use parent's
|
||||
NS_ASSERTION(!aFilterPrimitive->GetPrimaryFrame(), "Not expecting a frame");
|
||||
nsIContent *parent = aFilterPrimitive->GetFlattenedTreeParent();
|
||||
|
|
Загрузка…
Ссылка в новой задаче