mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 909157. Invalidate rendering observers when an image changes. r=mattwoodrow
--HG-- extra : rebase_source : 04b127fde9a9e07e50c6196f53a1eea3c8f04db6
This commit is contained in:
parent
3dffe95932
commit
0991ab95c2
7
layout/reftests/image-element/invalidate-1-ref.html
Normal file
7
layout/reftests/image-element/invalidate-1-ref.html
Normal file
@ -0,0 +1,7 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<body>
|
||||
<div style="background:url(repeatable-diagonal-gradient.png?4567); width:100px; height:100px"></div>
|
||||
<div style="background:url(repeatable-diagonal-gradient.png?90); width:100px; height:100px"></div>
|
||||
</body>
|
||||
</html>
|
7
layout/reftests/image-element/invalidate-1.html
Normal file
7
layout/reftests/image-element/invalidate-1.html
Normal file
@ -0,0 +1,7 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<body>
|
||||
<div id="A" style="background:url(repeatable-diagonal-gradient.png?1234); width:100px; height:100px"></div>
|
||||
<div style="background:-moz-element(#A); width:100px; height:100px;"></div>
|
||||
</body>
|
||||
</html>
|
@ -41,6 +41,7 @@ fuzzy(1,9674) random-if(!cocoaWidget) == gradient-html-06b.html gradient-html-06
|
||||
== gradient-html-06d.html gradient-html-06e.html
|
||||
random-if(!cocoaWidget) fuzzy-if(azureQuartz,1,11367) == gradient-html-07a.html gradient-html-07b.html
|
||||
fuzzy(1,16900) == gradient-html-07c.html gradient-html-07d.html
|
||||
HTTP == invalidate-1.html invalidate-1-ref.html
|
||||
== pattern-html-01.html pattern-html-01-ref.svg
|
||||
== pattern-html-02.html pattern-html-02-ref.svg
|
||||
== referenced-from-binding-01.html referenced-from-binding-01-ref.html
|
||||
|
BIN
layout/reftests/image-element/repeatable-diagonal-gradient.png
Normal file
BIN
layout/reftests/image-element/repeatable-diagonal-gradient.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
@ -12,6 +12,7 @@
|
||||
#include "nsError.h"
|
||||
#include "nsDisplayList.h"
|
||||
#include "FrameLayerBuilder.h"
|
||||
#include "nsSVGEffects.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace css {
|
||||
@ -329,6 +330,13 @@ void InvalidateImagesCallback(nsIFrame* aFrame,
|
||||
|
||||
aItem->Invalidate();
|
||||
aFrame->SchedulePaint();
|
||||
|
||||
// Update ancestor rendering observers (-moz-element etc)
|
||||
nsIFrame *f = aFrame;
|
||||
while (f && !f->HasAnyStateBits(NS_FRAME_DESCENDANT_NEEDS_PAINT)) {
|
||||
nsSVGEffects::InvalidateDirectRenderingObservers(f);
|
||||
f = nsLayoutUtils::GetCrossDocParentFrame(f);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
Loading…
Reference in New Issue
Block a user