(gah, hit 'enter' while typing bug summary. description & testcase coming up)
Created attachment 579558 [details]
STEPS TO REPRODUCE:
1. Load testcase
EXPECTED RESULTS: both top half & bottom half of testcase should animate smoothly to lime over 2s, leaving a plain lime rect
Bottom half of testcase remains unchanged, until I force a window-refresh by e.g. clicking titlebar or clicking outside of window
As noted in the label in the testcase, the bottom half of the testcase is a foreignObject element.
FWIW, the actual animation targets a <g> element that is the parent of both halves of the testcase.
This also isn't SMIL-dependent, actually -- I can trigger this by modifying the opacity of the <g> element in Web Developer Console. Non-SMIL testcase coming up next.
Reporting with latest nightly:
Mozilla/5.0 (X11; Linux x86_64; rv:11.0a1) Gecko/20111206 Firefox/11.0a1
Created attachment 579559 [details]
testcase 2 (no SMIL)
This testcase doesn't use SMIL -- it instead uses script to tweak the opacity after 500ms (as a poor-man's substitute for MozReftestInvalidate).
EXPECTED RESULTS: testcase 2 turns entirely lime after 500ms
ACTUAL RESULTS: bottom half doesn't change until you force window to invalidate
Created attachment 579666 [details] [diff] [review]
Comment on attachment 579666 [details] [diff] [review]
Looks good! r=me, with one suggestion:
>diff --git a/layout/svg/base/src/nsSVGForeignObjectFrame.h b/layout/svg/base/src/nsSVGForeignObjectFrame.h
>+ virtual void DidSetStyleContext(nsStyleContext* aOldStyleContext);
Could you add the shiny new MOZ_OVERRIDE keyword at the end of that line, before the ";"? That way we'll notice (with a compile error, in some compilers) if the inherited function ever changes its signature without updating this code.
You need to #include "mozilla/Attributes.h" to use it.
For reference, see:
We should revert this from Aurora (Mozilla 11). Daniel, could you do that please?
Created attachment 584779 [details] [diff] [review]
backout patch for aurora
Sure. (to be clear, this is due to the regression this caused, bug 713413.)
Requesting approval to backout from aurora.
Comment on attachment 584779 [details] [diff] [review]
backout patch for aurora
Approved for aurora.
Pushed backout to aurora:
FWIW, this appears to have regressed between Firefox 3.6 & 4.0.
Regression range was:
Tentatively blaming the biggest bug pushed that day, bug 564991, since there weren't any csets that mentioned SVG, and bug 564991 is invalidation-related.
Verified this using Firefox 12 beta 5 on Windows 7, Mac OS X 10.6 and Ubuntu 11.10. Loaded the test cases attached (testcase1 and testcase2) and both top half & bottom half of the testcases animate smoothly.
Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:12.0) Gecko/20100101 Firefox/12.0
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0