gecko-dev/layout/style
Kyle Huey 0660c18b2f Bug 816498: Fix some things about background attribute handling that are still broken. r=bz
As filed the bug is about table backgrounds failing to print.  The root cause of this is that we load images from the original document, because print/print-preview documents (which are static clones of the original) cannot do loads.  This results in an entry in the css::ImageValue's request table under the original document, but entry under the printing document.  Then we do layout, try to get the request, and fail, and nothing is displayed.  The solution to this is to force us to clone the request for the printing document if we're loading off the original document.  I manually verified that this does not regress Bug 560235.

While writing a test for this, we discovered another problem.  The reftest print code does not actually use the printing codepath.  Instead it takes an existing document, tears down its presshell, and creates a new presshell for printing.  Fixing the above bug did not make the reftest print test pass because ImageLoader does not deal properly with presshell destruction/recreation.  It assumes that when the presshell is destroyed all of the css::ImageValues can be cleared of their entries for that document.  This fails for ImageValues for mapped attributes because they are held alive by the content tree.  When a new presshell for this document is then created there is no entry for the document and thus no image request to paint.  The fix for this is to only clear the frame to request and request to frame mapping hashtables and not to clear the document's entry on the ImageValue when the presshell is destroyed.  The destruction of the ImageLoader (which is held from a strong reference on the document) is when those entries are removed.  The final change is to change css::ImageValue's hashtable from holding a strong reference to the keys (which are documents) to holding raw pointer references.  This is safe because we clear the relevant entry when the corresponding ImageLoader dies, and is needed to prevent a reference cycle that was being broken by presshell destruction.

--HG--
rename : layout/reftests/backgrounds/table-background-ref.html => layout/reftests/backgrounds/table-background-print-ref.html
rename : layout/reftests/backgrounds/table-background.html => layout/reftests/backgrounds/table-background-print.html
2013-02-23 06:59:43 -08:00
..
crashtests Bug 842134: fix serialization of unquoted url() in CSS. r=heycam 2013-02-17 22:03:55 -05:00
test Bug 842772 - Followup to address review comments. 2013-02-20 11:58:25 +11:00
xbl-marquee
AnimationCommon.cpp Bug 797520; improve OMTA logging. r=cjones 2012-12-12 10:12:47 +13:00
AnimationCommon.h Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz 2012-12-12 10:12:43 +13:00
arrow.gif
arrowd.gif
contenteditable.css
CSS.cpp Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures 2013-01-28 11:08:21 +00:00
CSS.h Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures 2013-01-28 11:08:21 +00:00
CSSCalc.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
CSSValue.h Backout bug 821593 for bustage. 2012-12-22 15:33:46 +01:00
Declaration.cpp Bug 833624. Bump up size of int's in mOrder to allow more than 256 CSS properties. r=dbaron 2013-01-24 02:24:27 +09:00
Declaration.h Bug 833624. Bump up size of int's in mOrder to allow more than 256 CSS properties. r=dbaron 2013-01-24 02:24:27 +09:00
designmode.css
ErrorReporter.cpp Bug 413958: report the text of the offending line in CSS error messages. r=dbaron 2013-01-11 12:27:43 -05:00
ErrorReporter.h Bug 413958: report the text of the offending line in CSS error messages. r=dbaron 2013-01-11 12:27:43 -05:00
forms.css Bug 838256, part 2 - Overhaul and complete the layout pieces for <input type=range>. r=dholbert for the combined diff with the previous changeset. 2013-02-16 17:57:21 +00:00
full-screen-override.css
GroupRule.h Bug 765599: Make CSS insertRule methods throw SYNTAX_ERR when given an empty rule or more than one rule. r=bzbarsky 2013-02-09 22:56:49 -08:00
html.css Bug 821695 - Do not load videocontrols.xml if the audio/video tag does not need it. r=roc 2013-02-01 08:47:55 -05:00
ImageLoader.cpp Bug 816498: Fix some things about background attribute handling that are still broken. r=bz 2013-02-23 06:59:43 -08:00
ImageLoader.h Bug 816498: Fix some things about background attribute handling that are still broken. r=bz 2013-02-23 06:59:43 -08:00
ImportRule.h Bug 795221 part 3. Implement cycle collection for GroupRule objects. r=smaug,dbaron 2012-10-07 22:39:09 -04:00
jar.mn
Loader.cpp Bug 563195: Fix -Wshadow warnings in layout/style. r=bzbarsky 2013-02-17 22:56:32 -08:00
Loader.h Bug 508725 - Part 2: Record on nsCSSStyleSheets whether they are for a <style scoped>. r=dbaron 2013-01-09 10:25:47 +11:00
Makefile.in Bug 563195: Add -Wshadow to CFLAGS/CXXFLAGS for layout/style. r=ted 2013-02-17 22:56:32 -08:00
NameSpaceRule.h Bug 795221 part 3. Implement cycle collection for GroupRule objects. r=smaug,dbaron 2012-10-07 22:39:09 -04:00
nsAnimationManager.cpp Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert 2013-02-16 13:51:02 -08:00
nsAnimationManager.h Bug 827717: Change record of CSS animation start to be before delay so that dynamic changes to animation-delay are honored. r=bzbarsky 2013-01-10 21:14:51 -08:00
nsComputedDOMStyle.cpp Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert 2013-02-16 13:51:02 -08:00
nsComputedDOMStyle.h Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert 2013-02-16 13:51:02 -08:00
nsCSSAnonBoxes.cpp
nsCSSAnonBoxes.h
nsCSSAnonBoxList.h
nsCSSDataBlock.cpp Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsCSSDataBlock.h Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
nsCSSFontDescList.h
nsCSSKeywordList.h Bug 838256, part 2 - Overhaul and complete the layout pieces for <input type=range>. r=dholbert for the combined diff with the previous changeset. 2013-02-16 17:57:21 +00:00
nsCSSKeywords.cpp Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
nsCSSKeywords.h
nsCSSParser.cpp Bug 841983: Require whitespace around 'not', 'and', and 'or' keywords in @supports rules. r=heycam 2013-02-16 21:29:38 -08:00
nsCSSParser.h Bug 765599: Make CSS insertRule methods throw SYNTAX_ERR when given an empty rule or more than one rule. r=bzbarsky 2013-02-09 22:56:49 -08:00
nsCSSPropAliasList.h Add preferences (defaulting to enabled, for now) to control whether certain prefixed aliases for CSS properties are supported, so that authors can have a way to test what happens when they're turned off in advance of our disabling them. (Bug 804944) r=bzbarsky 2012-10-26 19:04:20 +02:00
nsCSSProperty.h
nsCSSPropertySet.h
nsCSSPropList.h Bug 843322 - Make CSS 'text-overflow' apply to ::-moz-placeholder. r=roc 2013-02-23 11:38:15 +01:00
nsCSSProps.cpp Bug 840367: Fix misnaming of keyword IDs in nsCSSKeywordList.h. r=heycam 2013-02-13 11:53:56 -08:00
nsCSSProps.h Bug 793617 - Implement mask-type property. r=dbaron,longsonr 2012-12-21 11:15:22 +11:00
nsCSSPseudoClasses.cpp Bug 818400. Add a preference to control :scope and pref it off in release builds for now. r=dbaron 2012-12-24 19:35:34 -08:00
nsCSSPseudoClasses.h Bug 818400. Add a preference to control :scope and pref it off in release builds for now. r=dbaron 2012-12-24 19:35:34 -08:00
nsCSSPseudoClassList.h Bug 819871 - Make ":-moz-placeholder" parsable but without any effect on styling. r=dbaron,bz 2013-01-24 09:30:28 +00:00
nsCSSPseudoElementList.h Bug 838256, part 2 - Overhaul and complete the layout pieces for <input type=range>. r=dholbert for the combined diff with the previous changeset. 2013-02-16 17:57:21 +00:00
nsCSSPseudoElements.cpp Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsCSSPseudoElements.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsCSSRuleProcessor.cpp Back out Bug 678392 2013-02-08 16:52:12 -08:00
nsCSSRuleProcessor.h Bug 508725 - Part 3: Create a rule processor for each style scope. r=dbaron 2013-01-09 10:25:47 +11:00
nsCSSRules.cpp Bug 841896: Rename CSSKeyframesRule.insertRule to appendRule to match spec change. 2013-02-15 21:38:34 -08:00
nsCSSRules.h Bug 774980. Hook up nsCSSKeyframeRule to cycle collection. r=smaug 2013-01-18 23:32:12 -05:00
nsCSSScanner.cpp Bug 842134: fix serialization of unquoted url() in CSS. r=heycam 2013-02-17 22:03:55 -05:00
nsCSSScanner.h Bug 543151, part A4: unify the inner text-scanning loops used by GatherIdent, ScanString, NextURL. r=heycam 2013-02-16 18:27:53 -05:00
nsCSSStyleSheet.cpp Bug 765599: Make CSS insertRule methods throw SYNTAX_ERR when given an empty rule or more than one rule. r=bzbarsky 2013-02-09 22:56:49 -08:00
nsCSSStyleSheet.h Bug 508725 - Part 2: Record on nsCSSStyleSheets whether they are for a <style scoped>. r=dbaron 2013-01-09 10:25:47 +11:00
nsCSSValue.cpp Bug 816498: Fix some things about background attribute handling that are still broken. r=bz 2013-02-23 06:59:43 -08:00
nsCSSValue.h Bug 816498: Fix some things about background attribute handling that are still broken. r=bz 2013-02-23 06:59:43 -08:00
nsDOMCSSAttrDeclaration.cpp Back out 5520e123f526 (bug 763879) for b2g mochitest-8 and mochitest-9 failures 2013-02-22 20:40:24 -08:00
nsDOMCSSAttrDeclaration.h Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
nsDOMCSSDeclaration.cpp Back out 5520e123f526 (bug 763879) for b2g mochitest-8 and mochitest-9 failures 2013-02-22 20:40:24 -08:00
nsDOMCSSDeclaration.h Back out 5520e123f526 (bug 763879) for b2g mochitest-8 and mochitest-9 failures 2013-02-22 20:40:24 -08:00
nsDOMCSSRect.cpp bug 824970 - use webidl for Rect r=bz 2012-12-26 07:26:36 -05:00
nsDOMCSSRect.h bug 824970 - use webidl for Rect r=bz 2012-12-26 07:26:36 -05:00
nsDOMCSSRGBColor.cpp bug 840906 - densISupportsify nsDOMRGBCSSColor r=mccr8 2013-02-13 16:39:23 -05:00
nsDOMCSSRGBColor.h bug 840906 - densISupportsify nsDOMRGBCSSColor r=mccr8 2013-02-13 16:39:23 -05:00
nsDOMCSSValueList.cpp bug 830396 - add back nsIDOMCSSValueList r=bz 2013-01-14 12:29:27 -05:00
nsDOMCSSValueList.h bug 830396 - add back nsIDOMCSSValueList r=bz 2013-01-14 12:29:27 -05:00
nsDOMMediaQueryList.cpp bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
nsDOMMediaQueryList.h
nsFontFaceLoader.cpp Bug 563195: Fix -Wshadow warnings in layout/style. r=bzbarsky 2013-02-17 22:56:32 -08:00
nsFontFaceLoader.h bug 821442 - eliminate the unreliable mFamily back-pointer in gfxFontEntry, and instead pass/track font family explicitly where needed. r=roc 2012-12-19 09:42:25 +00:00
nsHTMLCSSStyleSheet.cpp Bug 760331: Coalesce data for inline style across nodes. r=bz 2012-09-30 09:40:24 -07:00
nsHTMLCSSStyleSheet.h Bug 806279 - CC macros refactoring: part 3: fold the TRAVERSE_NATIVE and AMBIGUOUS cases - r=mccr8,smaug 2012-11-15 02:32:39 -05:00
nsHTMLStyleSheet.cpp Bug 824397 - Use NS_ENSURE_{TRUE,FALSE,SUCCESS}_VOID(foo) instead of NS_ENSURE_{TRUE,FALSE,SUCCESS}(foo, ). r=derf. 2012-12-23 20:45:57 -08:00
nsHTMLStyleSheet.h Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
nsICSSDeclaration.h bug 798567 - convert css values to webidl r=bz 2012-10-01 12:49:41 -04:00
nsICSSLoaderObserver.h
nsICSSPseudoComparator.h
nsICSSRuleList.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsICSSStyleRuleDOMWrapper.h
nsIMediaList.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsIStyleRule.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsIStyleRuleProcessor.h
nsIStyleSheet.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsLayoutStylesheetCache.cpp Bug 819819 (part 2) - Remove |name| from NS_MEMORY_REPORTER_MALLOC_SIZEOF_FUN. r=jlebar. 2012-12-23 16:59:51 -08:00
nsLayoutStylesheetCache.h Bug 800187 (part 1) - Add memory reporter for the nsStyleSheetService. r=bz. 2012-10-11 21:05:38 -07:00
nsMediaFeatures.cpp Back out Bug 678392 2013-02-08 16:52:12 -08:00
nsMediaFeatures.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsNthIndexCache.cpp Bug 829344 - Part 4: Fix gcc -Wlogical-op warnings from PRBool/bool conversion. r=ehsan 2013-01-10 17:56:51 -08:00
nsNthIndexCache.h Bug 810192 - don't require a default constructor for Hash{Map,Set}; only construct objects for live elements (r=terrence) 2012-11-12 15:30:39 -08:00
nsROCSSPrimitiveValue.cpp bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
nsROCSSPrimitiveValue.h bug 824970 - nsROCSSPrimitiveValue::GetRectValue() should return nsDOMCSSRect* r=bz 2012-12-26 12:02:37 -05:00
nsRuleData.cpp Bug 827579: Remove post-resolve callback concept from style system. r=bzbarsky 2013-01-08 20:37:29 -08:00
nsRuleData.h Bug 827579: Remove post-resolve callback concept from style system. r=bzbarsky 2013-01-08 20:37:29 -08:00
nsRuleNode.cpp Bug 563195: Fix -Wshadow warnings in layout/style. r=bzbarsky 2013-02-17 22:56:32 -08:00
nsRuleNode.h Bug 781360 patch 2: Rename nsRuleNode::GetPresContext to PresContext, since it can never return null. r=dholbert 2013-02-16 13:04:54 -08:00
nsRuleProcessorData.h Bug 812822 part 3: Add a TreeMatchContext flag to indicate that we should skip flex item style fixup, and use it when framing anonymous content in ConstructFrame(). r=bz 2013-02-20 23:35:03 -08:00
nsRuleWalker.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsStyleAnimation.cpp Back out 5520e123f526 (bug 763879) for b2g mochitest-8 and mochitest-9 failures 2013-02-22 20:40:24 -08:00
nsStyleAnimation.h Bug 813373, patch 1: Remove pres context parameters from nsStyleAnimation::UncomputeValue. r=dholbert 2012-11-20 11:55:14 -08:00
nsStyleContext.cpp Bug 812822 part 1: Add flag 'eSkipFlexItemStyleFixup' to let our nsStyleContext creation functions skip the flex-item-specific chunk of ApplyStyleFixups(). r=bz 2013-02-20 23:34:58 -08:00
nsStyleContext.h Bug 812822 part 1: Add flag 'eSkipFlexItemStyleFixup' to let our nsStyleContext creation functions skip the flex-item-specific chunk of ApplyStyleFixups(). r=bz 2013-02-20 23:34:58 -08:00
nsStyleCoord.cpp Bug 761393 - Add a method to hash an nsStyleCoord. r=dbaron 2012-08-26 21:08:32 -07:00
nsStyleCoord.h Bug 761393 - Add a method to hash an nsStyleCoord. r=dbaron 2012-08-26 21:08:32 -07:00
nsStyleSet.cpp Bug 812822 part 3: Add a TreeMatchContext flag to indicate that we should skip flex item style fixup, and use it when framing anonymous content in ConstructFrame(). r=bz 2013-02-20 23:35:03 -08:00
nsStyleSet.h Bug 812822 part 1: Add flag 'eSkipFlexItemStyleFixup' to let our nsStyleContext creation functions skip the flex-item-specific chunk of ApplyStyleFixups(). r=bz 2013-02-20 23:34:58 -08:00
nsStyleStruct.cpp Bug 838758: Cache GradientStops instead of gfxPattern. r=jrmuizel 2013-02-15 20:54:49 +02:00
nsStyleStruct.h Bug 655877 - Part 11b: Use the right hints when reflowing due to dominant-baseline change. r=jwatt 2013-02-11 17:22:16 +11:00
nsStyleStructFwd.h Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg 2012-08-22 11:56:38 -04:00
nsStyleStructInlines.h Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert 2013-02-16 13:51:02 -08:00
nsStyleStructList.h
nsStyleTransformMatrix.cpp Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz 2012-12-12 10:12:43 +13:00
nsStyleTransformMatrix.h Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz 2012-12-12 10:12:43 +13:00
nsStyleUtil.cpp Back out 5520e123f526 (bug 763879) for b2g mochitest-8 and mochitest-9 failures 2013-02-22 20:40:24 -08:00
nsStyleUtil.h Back out 5520e123f526 (bug 763879) for b2g mochitest-8 and mochitest-9 failures 2013-02-22 20:40:24 -08:00
nsTransitionManager.cpp Bug 840480 r=roc 2013-02-20 13:13:01 +13:00
nsTransitionManager.h Bug 822721: Call CalcStyleDifference and process the style change list resulting from the miniflush we do to update throttled animations prior to seeing if we need to start transitions. r=bzbarsky 2013-01-08 20:37:29 -08:00
quirk.css Bug 806068 part 2: Change in-tree usage of -moz-initial to initial. r=dholbert 2012-10-30 16:57:36 +01:00
Rule.h Bug 795221 part 3. Implement cycle collection for GroupRule objects. r=smaug,dbaron 2012-10-07 22:39:09 -04:00
StyleRule.cpp bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
StyleRule.h Bug 833808 part 2. Add some utilities for working with selectors to inspector utils. r=dbaron 2013-02-13 10:11:53 -05:00
TopLevelImageDocument.css
TopLevelVideoDocument.css
ua.css Bug 827799. Apply clip to outer table frames as needed. r=roc 2013-01-15 14:04:24 -05:00
viewsource.css