gecko/layout/style
L. David Baron c9ae86a635 Bug 828173 patch 6: Remove calls to ForceLayerRerendering from the miniflush code (UpdateThrottledStyles, which flushes animations whose main thread updates are throttled without updating any other styles). r=mattwoodrow
I've been wanting to remove this code for a while.  I think this code is
problematic for three reasons:

 (1) It's in the middle of code where it doesn't belong, and which ought
     to be handling purely-style-system things.  (This is blocking me
     from reusing that code elsewhere, e.g., in bug 977991 and
     bug 960465, both of which could use it in some form.)

 (2) It defeats the optimization from bug 790505 whenever we do a
     miniflush (in other words, whenever we have any style change,
     whether or not it's related)

 (3) It means the conditions for when we decide to ship a new set of
     animation data to a layer doesn't cover all the cases the layer
     needs it.  In particular, we only run this miniflush code when we
     have a currently running animation or transition that's running on
     the compositor thread.  On the other hand, the UpdateTransformLayer
     style change handling in DoApplyRenderingChangeToTree depends on
     whether the frame currently has a transform layer, which can
     continue to be true for a bit after the animation stops.  So if we
     need to send animations to the layer because of a transform style
     change that happens soon after an animation completes, our style
     change handling will find the existing layer and call its
     SetBaseTransformForNextTransaction method but never do anything
     that triggers layer construction.  The style throttling code, in
     turn, will never stop doing main thread updates because the
     animation generation on the layer is out-of-date, and these main
     thread updates will keep the layer active, but they'll never show
     up because the stale animation data overrides the new transform
     that we've been setting.  (At least, I think that's what was
     happening; it makes sense to me and matches the behavior I was
     observing.  I didn't verify which main thread updates and which
     layer updates were actually happening, though.)

     This shows up, for example, in the animation in attachment 8384813
     just halting at a corner if I'm careful not to disturb it.  (I'm
     testing on Linux, with both accelerated layers and OMT animations
     explicitly enabled.)

I think there are probably some other things that can be removed as
followups to removing this code, because I think we made some boundary
conditions intentionally incorrect so that problem (3) above wouldn't be
as bad as it otherwise would have been.
2014-03-04 20:13:22 -08:00
..
crashtests Bug 972199 part 2 - Add a crashtest for restoring the refresh driver after an advance; r=nrc 2014-03-05 10:19:15 +09:00
test Bug 978648: Handle dynamic changes to @keyframes rules and keyframe rules better. r=heycam 2014-03-04 20:13:20 -08:00
xbl-marquee Bug 774572 - Part 2: Define JAR_MANIFESTS in moz.build files; r=glandium 2013-12-10 16:18:11 +09:00
AnimationCommon.cpp Bug 828173 patch 6: Remove calls to ForceLayerRerendering from the miniflush code (UpdateThrottledStyles, which flushes animations whose main thread updates are throttled without updating any other styles). r=mattwoodrow 2014-03-04 20:13:22 -08:00
AnimationCommon.h Bug 914847. Mini-flush for animations. r=dbaron 2013-10-22 14:14:41 +02:00
arrow.gif
arrowd.gif
contenteditable.css
CSS.cpp
CSS.h Bug 968643 - Part 1: Stop using [PrefControlled]; r=bzbarsky 2014-02-06 13:28:14 -05:00
CSSCalc.h
CSSValue.h
CSSVariableDeclarations.cpp Bug 773296 - Part 27: Support 'unset' in CSS variables. r=dbaron 2013-12-12 13:09:47 +11:00
CSSVariableDeclarations.h Bug 773296 - Part 27: Support 'unset' in CSS variables. r=dbaron 2013-12-12 13:09:47 +11:00
CSSVariableResolver.cpp Bug 950497 - Make self-referencing CSS variables invalid even if they have fallback. r=dbaron 2013-12-17 16:16:42 +11:00
CSSVariableResolver.h Bug 773296 - Part 8: Resolve and compute CSS variables. r=dbaron 2013-12-12 13:09:41 +11:00
CSSVariableValues.cpp Bug 773296 - Part 22: Expose variables through the nsComputedDOMStyle indexed getter. r=dbaron 2013-12-12 13:09:45 +11:00
CSSVariableValues.h Bug 773296 - Part 22: Expose variables through the nsComputedDOMStyle indexed getter. r=dbaron 2013-12-12 13:09:45 +11:00
Declaration.cpp Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
Declaration.h Bug 731271 - Part 4: Add ability for nsCSSValues to serialize themselves in their original syntactic form. r=dbaron 2013-09-16 09:35:49 +10:00
designmode.css
ErrorReporter.cpp Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
ErrorReporter.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
forms.css Bug 974430 - Put the |input[type=number]| rule in forms.css into a separate sheet so we can make it respect the dom.forms.number pref. r=dbaron 2014-02-26 12:26:14 +00:00
full-screen-override.css
generate-stylestructlist.py Bug 773296 - Part 8: Resolve and compute CSS variables. r=dbaron 2013-12-12 13:09:41 +11:00
GroupRule.h Bug 938123 - Build layout/style in unified mode; r=roc 2013-11-14 21:42:57 -05:00
html.css Bug 865407 - Part 9: Remove border-box and padding CSS on the caption overlay. r=rillian 2014-02-21 22:14:22 -05:00
ImageDocument.css
ImageLoader.cpp Bug 957391 - Call nsIFrame::SchedulePaint() in ImageLoader::DoRedraw(). r=mattwoodrow 2014-02-10 09:34:11 -05:00
ImageLoader.h
ImportRule.h
jar.mn Bug 974430 - Put the |input[type=number]| rule in forms.css into a separate sheet so we can make it respect the dom.forms.number pref. r=dbaron 2014-02-26 12:26:14 +00:00
Loader.cpp Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
Loader.h Bug 923251 - Part b: Make Loader::PrepareSheet return void; r=heycam 2013-11-11 08:57:53 +01:00
Makefile.in Bug 772828 - Part b: use RESOURCE_FILES in moz.build instead of manual rules in Makefile.in; r=mshal 2013-11-05 13:37:54 -05:00
MediaQueryList.cpp Bug 950659 - Remove nsIDOMMediaQueryList and nsIDOMMediaQueryListListener; r=bzbarsky 2013-12-17 08:40:06 -05:00
MediaQueryList.h Bug 950659 - Remove nsIDOMMediaQueryList and nsIDOMMediaQueryListListener; r=bzbarsky 2013-12-17 08:40:06 -05:00
moz.build Bug 772828 - Part b: use RESOURCE_FILES in moz.build instead of manual rules in Makefile.in; r=mshal 2013-11-05 13:37:54 -05:00
NameSpaceRule.h
nsAnimationManager.cpp Bug 914847. Mini-flush for animations. r=dbaron 2013-10-22 14:14:41 +02:00
nsAnimationManager.h Bug 972199 part 3 - Fix comment in ElementAnimations::GetPositionInIteration; r=nrc 2014-03-05 10:19:16 +09:00
nsComputedDOMStyle.cpp Bug 975741: Store the initial value of 'perspective' as 'none' rather than the (invalid value) '0' to make storage of 'none' consistent, and remove workaround from nsComputedDOMStyle computed value implementation. r=heycam 2014-02-24 15:27:53 -08:00
nsComputedDOMStyle.h Bug 966992 - Implement the overflow-clip-box property in the style system. r=cam 2014-02-22 01:18:23 +00:00
nsComputedDOMStylePropertyList.h Bug 966992 - Implement the overflow-clip-box property in the style system. r=cam 2014-02-22 01:18:23 +00:00
nsCSSAnonBoxes.cpp Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo 2013-12-08 21:52:54 -05:00
nsCSSAnonBoxes.h
nsCSSAnonBoxList.h
nsCSSDataBlock.cpp Bug 773296 - Part 17: Resolve property values that have variable references at computed value time. r=dbaron 2013-12-12 13:09:44 +11:00
nsCSSDataBlock.h Bug 773296 - Part 17: Resolve property values that have variable references at computed value time. r=dbaron 2013-12-12 13:09:44 +11:00
nsCSSFontDescList.h
nsCSSKeywordList.h Bug 970079 - Native theming for MacOS X help buttons, widget part. r=mstange, roc. 2014-02-27 18:12:16 +01:00
nsCSSKeywords.cpp Bug 938123 - Build layout/style in unified mode; r=roc 2013-11-14 21:42:57 -05:00
nsCSSKeywords.h
nsCSSParser.cpp Bug 978903: Fix some uninitialized variable warnings in the CSS parser. r=heycam 2014-03-04 20:13:20 -08:00
nsCSSParser.h Bug 773296 - Part 23: Support variables in CSSStyleDelcaration methods. r=dbaron 2013-12-12 13:09:46 +11:00
nsCSSPropAliasList.h Bug 243412: Add box-sizing preference to control the vendor prefix; r=dbaron 2014-02-04 18:06:18 -08:00
nsCSSProperty.h Bug 773296 - Part 2: Parse CSS variable declarations and store them on Declaration objects. p=ebassi,heycam r=dbaron 2013-12-12 13:09:40 +11:00
nsCSSPropertySet.h Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo 2013-12-08 21:52:54 -05:00
nsCSSPropList.h Bug 966992 - Implement the overflow-clip-box property in the style system. r=cam 2014-02-22 01:18:23 +00:00
nsCSSProps.cpp Bug 978443 - Rename NS_STYLE_CLEAR_LEFT_AND_RIGHT to NS_STYLE_CLEAR_BOTH. r=dholbert 2014-03-02 17:42:16 +00:00
nsCSSProps.h Bug 975501 part 2: Add display:{inline-,}grid behind a pref, and a stub nsGridContainerFrame. r=dholbert 2014-02-26 23:45:29 -08:00
nsCSSPseudoClasses.cpp Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo 2013-12-08 21:52:54 -05:00
nsCSSPseudoClasses.h Bug 922669 - Part 1: Parse selectors with user action pseudo-classes after pseudo-elements. r=bz 2013-11-28 17:46:38 +11:00
nsCSSPseudoClassList.h
nsCSSPseudoElementList.h Bug 930020 - Part 2: Use flag to hide <input type=number> pseudo-elements from content. r=bz 2013-11-28 18:03:16 +11:00
nsCSSPseudoElements.cpp Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo 2013-12-08 21:52:54 -05:00
nsCSSPseudoElements.h Bug 938334 - Use PseudoElementSupportsStyleAttribute(Type) when it makes sense to do so and remove now unnecessary nsCSSPseudoElements functions. r=dbaron 2013-12-02 22:38:45 +01:00
nsCSSRuleProcessor.cpp Bug 962608 - Make PL_DHashTableInit infallible by default. r=briansmith,bsmedberg,ehsan,froydnj,jduell,jfkthame,roc,smaug 2014-02-27 10:04:09 -08:00
nsCSSRuleProcessor.h Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsCSSRules.cpp Bug 978648: Handle dynamic changes to @keyframes rules and keyframe rules better. r=heycam 2014-03-04 20:13:20 -08:00
nsCSSRules.h
nsCSSScanner.cpp Bug 976350 patch 1: Move the contents of nsTraceRefcnt.h into nsISupportsImpl.h. r=bsmedberg 2014-02-26 13:36:35 -08:00
nsCSSScanner.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsCSSStyleSheet.cpp Bug 458300 - Rename nsINameSpaceManager.h to nsNameSpaceManager.h. r=jst r=hsivonen 2014-02-27 20:04:46 -03:00
nsCSSStyleSheet.h Bug 921718 - Part b: Move MediaList to WebIDL; r=bz 2013-11-11 09:03:17 +01:00
nsCSSValue.cpp Bug 969756. r=cam 2014-02-15 17:40:38 +00:00
nsCSSValue.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsDOMCSSAttrDeclaration.cpp Backout changeset 3fb9ea77d858 for bug 876321 due to test failures (CLOSED TREE) 2013-11-03 23:14:26 -08:00
nsDOMCSSAttrDeclaration.h Bug 974687 - Part 1: Add about 300 MOZ_OVERRIDE in layout/. r=dholbert 2014-02-24 09:41:56 -05:00
nsDOMCSSDeclaration.cpp Bug 731271 - Part 6: Add a chrome-only CSSDeclaration.getAuthoredPropertyValue() method to expose a property value in its original syntactic form. r=dbaron 2013-09-16 09:35:49 +10:00
nsDOMCSSDeclaration.h Bug 773296 - Part 23: Support variables in CSSStyleDelcaration methods. r=dbaron 2013-12-12 13:09:46 +11:00
nsDOMCSSRect.cpp
nsDOMCSSRect.h
nsDOMCSSRGBColor.cpp
nsDOMCSSRGBColor.h
nsDOMCSSValueList.cpp Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsDOMCSSValueList.h
nsFontFaceLoader.cpp bug 939049 - get rid of useless QIs r=smaug 2013-11-15 11:32:12 -05:00
nsFontFaceLoader.h Bug 974687 - Part 1: Add about 300 MOZ_OVERRIDE in layout/. r=dholbert 2014-02-24 09:41:56 -05:00
nsHTMLCSSStyleSheet.cpp Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsHTMLCSSStyleSheet.h Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsHTMLStyleSheet.cpp Bug 962608 - Make PL_DHashTableInit infallible by default. r=briansmith,bsmedberg,ehsan,froydnj,jduell,jfkthame,roc,smaug 2014-02-27 10:04:09 -08:00
nsHTMLStyleSheet.h Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsICSSDeclaration.h Bug 731271 - Part 6: Add a chrome-only CSSDeclaration.getAuthoredPropertyValue() method to expose a property value in its original syntactic form. r=dbaron 2013-09-16 09:35:49 +10:00
nsICSSLoaderObserver.h
nsICSSPseudoComparator.h
nsICSSRuleList.h
nsICSSStyleRuleDOMWrapper.h
nsIMediaList.h Bug 921718 - Part b: Move MediaList to WebIDL; r=bz 2013-11-11 09:03:17 +01:00
nsIStyleRule.h
nsIStyleRuleProcessor.h Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsIStyleSheet.h
nsLayoutStylesheetCache.cpp Bug 974430 - Put the |input[type=number]| rule in forms.css into a separate sheet so we can make it respect the dom.forms.number pref. r=dbaron 2014-02-26 12:26:14 +00:00
nsLayoutStylesheetCache.h Bug 974430 - Put the |input[type=number]| rule in forms.css into a separate sheet so we can make it respect the dom.forms.number pref. r=dbaron 2014-02-26 12:26:14 +00:00
nsMediaFeatures.cpp Bug 968118. Make nsCSSProps keyword tables be int16_t instead of int32_t for a small space win. r=heycam 2014-02-06 00:10:44 +13:00
nsMediaFeatures.h Bug 968118. Make nsCSSProps keyword tables be int16_t instead of int32_t for a small space win. r=heycam 2014-02-06 00:10:44 +13:00
nsNthIndexCache.cpp Bug 940033 - js::HashMapEntry::{key,value} fields should be private, with accessors, and the former should expose a const reference. r=jimb 2013-11-25 17:35:09 -08:00
nsNthIndexCache.h
nsROCSSPrimitiveValue.cpp Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsROCSSPrimitiveValue.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsRuleData.cpp
nsRuleData.h Bug 773296 - Part 5: Map variables on a Declaration to nsRuleData. r=dbaron 2013-12-12 13:09:41 +11:00
nsRuleNode.cpp Bug 975769 - Avoid asserting on a eCSSProperty_UNKNOWN - r=dbaron 2014-02-27 15:09:02 -05:00
nsRuleNode.h Bug 969460 part 1: Give EnsureBlockDisplay a second parameter, to determine whether it converts 'display:list-item' to block. r=bz 2014-02-15 10:42:35 -08:00
nsRuleProcessorData.h Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsRuleWalker.h
nsStyleAnimation.cpp Bug 731271 - Part 4: Add ability for nsCSSValues to serialize themselves in their original syntactic form. r=dbaron 2013-09-16 09:35:49 +10:00
nsStyleAnimation.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsStyleConsts.h Bug 978443 - Rename NS_STYLE_CLEAR_LEFT_AND_RIGHT to NS_STYLE_CLEAR_BOTH. r=dholbert 2014-03-02 17:42:16 +00:00
nsStyleContext.cpp Bug 975501 part 2: Add display:{inline-,}grid behind a pref, and a stub nsGridContainerFrame. r=dholbert 2014-02-26 23:45:29 -08:00
nsStyleContext.h Bug 91419 patch 9: Fix comments and debugging output referring to "special" frames. r=mats 2014-02-06 17:45:33 -08:00
nsStyleCoord.cpp
nsStyleCoord.h
nsStyleSet.cpp Bug 828300 - Replace NS_ARRAY_LENGTH with mozilla::ArrayLength/MOZ_ARRAY_LENGTH. r=ehsan 2014-01-30 13:26:54 -05:00
nsStyleSet.h Bug 922669 - Part 7: Add nsStyleSet::HasStateDependentStyle and nsCSSRuleProcessor:HasStateDependentStyle overrides that work on pseudo-elements. r=bz 2013-11-28 17:46:39 +11:00
nsStyleStruct.cpp Bug 975741: Store the initial value of 'perspective' as 'none' rather than the (invalid value) '0' to make storage of 'none' consistent, and remove workaround from nsComputedDOMStyle computed value implementation. r=heycam 2014-02-24 15:27:53 -08:00
nsStyleStruct.h Bug 975501 part 2: Add display:{inline-,}grid behind a pref, and a stub nsGridContainerFrame. r=dholbert 2014-02-26 23:45:29 -08:00
nsStyleStructFwd.h Bug 773296 - Part 3: Allow more than 27 style structs. r=dbaron 2013-12-12 13:09:40 +11:00
nsStyleStructInlines.h Bug 700926. Use nsStyleImage and nsRenderingContext to draw border-images. r=roc 2014-01-31 16:36:41 +13:00
nsStyleTransformMatrix.cpp Bug 938123 - Build layout/style in unified mode; r=roc 2013-11-14 21:42:57 -05:00
nsStyleTransformMatrix.h
nsStyleUtil.cpp Bug 883975 - CSP 1.1 hash-source. r=sstamm, r=dholbert, r=mrbkap 2014-01-02 11:14:06 -08:00
nsStyleUtil.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
nsTransitionManager.cpp Bug 969219 Simplify constructor of InternalTransitionEvent r=smaug 2014-02-11 14:35:25 +09:00
nsTransitionManager.h Bug 914847. Mini-flush for animations. r=dbaron 2013-10-22 14:14:41 +02:00
number-control.css Bug 974430 - Put the |input[type=number]| rule in forms.css into a separate sheet so we can make it respect the dom.forms.number pref. r=dbaron 2014-02-26 12:26:14 +00:00
plaintext.css Bug 947588. Part 4: Set -moz-text-discard:none in devtools, XUL, text inputs, plaintext documents, view-source documents. r=heycam 2014-02-05 23:23:08 +13:00
quirk.css Bug 977248: Remove quirk.css rule that selects on an attribute that was only set by the old HTML parser. r=mrbkap 2014-02-26 23:00:13 -08:00
Rule.h Bug 784739 - Switch from NULL to nullptr in layout/; r=ehsan 2013-10-08 14:47:21 -04:00
StyleRule.cpp Bug 458300 - Rename nsINameSpaceManager.h to nsNameSpaceManager.h. r=jst r=hsivonen 2014-02-27 20:04:46 -03:00
StyleRule.h Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc 2014-01-04 10:02:17 -05:00
TopLevelImageDocument.css
TopLevelVideoDocument.css
ua.css Bug 965237 - Make overflow-clip-box:content-box be the default for <input type=text/password/number> and <textarea>. r=roc 2014-02-22 01:18:24 +00:00
viewsource.css Bug 947588. Part 4: Set -moz-text-discard:none in devtools, XUL, text inputs, plaintext documents, view-source documents. r=heycam 2014-02-05 23:23:08 +13:00