Closed Bug 725927 Opened 13 years ago Closed 13 years ago

nsGfxScrollFrameInner::UpdateOverflow cause thebesLayers reflow for poster-circle and other famous examples

Categories

(Core :: Layout, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 689504

People

(Reporter: romaxa, Unassigned)

References

()

Details

probably value 34 is specific for my environment, but with http://romaxa.info/tests/poster-circle2.html I have thebesLayers content repainting on every animation paint. if I change font-size to 33 or remove text, then it works fast and smooth. Also I noticed with the same testcase if I remove text and change perspective from 0px to 800px, then I have invalidates happening again... any ideas what kind of dark magic happens here?
Minor traking of reflow operations show me this backtrace: #0 PresShell::FrameNeedsReflow (this=0x3fc95370, aFrame=0x413a9fe0, aIntrinsicDirty=nsIPresShell::eResize, aBitToAdd=1024) at layout/base/nsPresShell.cpp:2877 #1 0x3b07780c in nsGfxScrollFrameInner::UpdateOverflow (this=0x413aa030) at layout/generic/nsGfxScrollFrame.cpp:3330 #2 0x3afefd2c in nsCSSFrameConstructor::ProcessRestyledFrames (this=0x41677200, aChangeList=...) at layout/base/nsCSSFrameConstructor.cpp:8013 #3 0x3aff0054 in nsCSSFrameConstructor::RestyleElement (this=0x41677200, aElement=<value optimized out>, aPrimaryFrame=0x4208ea80, aMinHint=0, aRestyleTracker=..., aRestyleDescendants=false) at layout/base/nsCSSFrameConstructor.cpp:8091 #4 0x3afde8ec in mozilla::css::RestyleTracker::ProcessOneRestyle (this=0x41677340, aElement=0xae838214, aRestyleHint=<value optimized out>, aChangeHint=0)
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → DUPLICATE
Summary: Poster circle animation cause extra invalidates when poster text size >=34 → nsGfxScrollFrameInner::UpdateOverflow cause thebesLayers reflow for poster-circle and other famous examples
You need to log in before you can comment on or make changes to this bug.