gecko/layout/reftests
Kyle Huey 0cae034974 Bug 783162: Make mapped attributes hold the image alive. r=bz
The nsCSSValue in nsGenericHTMLElement::MapBackgroundInto is a temporary.  This causes a problem after Bug 697230 landed, because the nsCSSValue::Image we put into that value is destroyed once we're done doing style stuff.  Previously the nsImageLoader would grab the request off the nsCSSValue::Image and hold it alive.  Bug 697230 changed the behavior here; now when the nsCSSValue::Image is destroyed it tells the image loader to drop the request.  The result is that all the references to the request are dropped and the frame is never told it has a background.

The solution is to keep the nsCSSValue::Image alive longer.  This patch adds two new types of nsAttrValue.  The first is an nsCSSValue::URL.  A ParseBackgroundAttribute method is added on nsGenericHTMLElement that the relevant elements (body/td/th/table/tr/tbody/thead/tfoot) call that parses background into an nsCSSValue::URL.  The second is an nsCSSValue::Image.  nsGenericHTMLElement::MapBackgroundInto attempts to convert the nsCSSValue::URL into an nsCSSValue::Image by kicking off the image load.  The result is that image loads are only started when the element is actually visible.  This also mirrors the way background-image works.  This also allows us to fix two longstanding bugs in this code.  Since MapBackgroundInto doesn't have a pointer to the actual element, it relied on grabbing the principal of the document.  Now we can grab the principal of the node in ParseBackgroundAttribute.  MapBackgroundInto also has no way to get at the element's base URI (to honor xml:base), which is now possible in ParseBackgroundAttribute.

nsCSSValue::[Image|URL] have also been moved to be mozilla::css::[Image|URL]Value.  nsAttrValue.h is included in external linkage code, so it can't include nsCSSValue.h to get the declarations of nsCSSValue::[Image|URL], and nested classes can't be forward declared.  Moving the classes to a namespace solves the problem.

Finally some old inoperative quirks mode code was removed.  This code has done nothing since Bug 273078 was landed in 2004.
2012-08-24 10:50:49 -07:00
..
abs-pos Bug 758620 - Add fuzzing to fixed-pos reftests. r=roc 2012-06-27 16:44:06 +01:00
backgrounds Bug 783162: Make mapped attributes hold the image alive. r=bz 2012-08-24 10:50:49 -07:00
bidi Don't split inline ancestors of bidi frames if we don't have any child frames after the split. Bug 779003, r=roc 2012-08-13 20:51:36 -07:00
border-image
border-radius Bug 758620 - Add fuzzing to fixed-pos reftests. r=roc 2012-06-27 16:44:06 +01:00
box
box-ordinal
box-properties Bug 308801 - box-sizing:border-box with min-/max-width/height reftests. 2012-08-20 03:15:14 +02:00
box-shadow
bugs Bug 776265 - changing the way ComputeHeightValue works to make it work just 2012-08-08 17:58:26 +02:00
canvas Back out bug 761890, bug 746896, and bug 759036 because of reftest failures 2012-06-11 22:50:31 -07:00
columns Bug 779566: Remove code from nsColumnSetFrame that aligns RTL columns to the left of the frame. [r=roc] 2012-08-01 20:37:23 -05:00
counters
css-calc Bug 685516: Disable a bunch of failing tests on Android XUL. r=jrmuizel 2012-08-13 11:22:11 -07:00
css-charset
css-default
css-disabled
css-enabled
css-gradients Backout 5d77941eba28 (bug 772726), df597d36bcbb (bug 383026), c9c7e1b9aed9 (bug 779399) for failures in meter-native-style.html 2012-08-10 14:50:43 +01:00
css-import
css-invalid Backout changeset d14ec506f28f (bug 539356) because of performance and correctness regressions 2012-07-03 20:09:31 -04:00
css-mediaqueries
css-optional
css-parsing
css-placeholder
css-required
css-selectors
css-submit-invalid
css-transitions Bug 762303 - Unprefix CSS Transition properties and provide temporary aliases for -moz-transition and exposed subproperties. r=dbaron 2012-07-08 21:25:10 -04:00
css-ui-invalid Backout changeset d14ec506f28f (bug 539356) because of performance and correctness regressions 2012-07-03 20:09:31 -04:00
css-ui-valid Backout changeset d14ec506f28f (bug 539356) because of performance and correctness regressions 2012-07-03 20:09:31 -04:00
css-valid Backout changeset d14ec506f28f (bug 539356) because of performance and correctness regressions 2012-07-03 20:09:31 -04:00
css-valuesandunits
css-visited
cssom
datalist
dom
first-letter
first-line
floats
font-face backout changeset d9d5d1bd766c (bug 769194) because of crashiness. 2012-07-09 22:47:48 +01:00
font-features
font-inflation Bug 783565 - Don't look for mobile doctype or handheldFriendly if there is also a meta viewport tag [r=jwir3] 2012-08-22 13:17:09 -07:00
font-matching bug 769475 - reftest for italicized Arabic text. r=smontagu 2012-07-23 03:51:11 -04:00
fonts Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
forms Backout changeset e04abde1b323 (bug 539356) because of performance and correctness regressions 2012-07-03 20:21:03 -04:00
generated-content Bug 763424. Dynamic changes to generated content don't work correctly on frames which pass a child content insertion frame to ProcessChildren (e.g. <td>). r=dbaron 2012-06-11 18:21:35 -04:00
ib-split
image Bug 685516: Disable one more test. 2012-08-15 06:17:24 -07:00
image-element Mark gradient tests fuzzy for bug 768775. r=bas 2012-07-02 13:18:32 +12:00
image-rect Bug 685516: Disable some more tests. 2012-08-14 21:05:24 -07:00
image-region
indic-shaping
inline-borderpadding
invalidation
layers Bug 741682 - Remove unnecessary scrollbars from test. r=roc 2012-07-23 15:00:37 +12:00
line-breaking Bug 765166 lines should be able to be broken before/after Ideographic space next to breakable white space r=roc 2012-06-16 23:48:57 +09:00
list-item
margin-collapsing
marquee
mathml Bug 781189 - Remove rowline attributes from mtable-align-whitespace.html and mtable-align-whitespace-ref.html to fix intermittent failures. r=fwang 2012-08-18 08:32:07 -04:00
native-theme
object
ogg-video Bug 778995 - Mark webm-video/zoomed-1.xhtml and ogg-video/zoomed-1.xhtml fuzzy for slight color difference when SVG display lists are enabled. r=kinetik. 2012-08-01 23:39:13 +01:00
pagination Bug 764567: Implement column-fill part of CSS3 multicol spec, now with regression fixes [r=roc]. 2012-07-31 11:21:19 -05:00
percent-overflow-sizing
pixel-rounding Bug 685516: Disable background-image-tiling.html on Android XUL. 2012-08-15 10:55:59 -07:00
position-dynamic-changes Bug 769362 - Mark the rest of the relative position change tests as random on Mac; r=bzbarsky 2012-06-28 15:26:36 -04:00
printing
reftest-sanity Bug 685516: Disable a bunch of failing tests on Android XUL. r=jrmuizel 2012-08-13 11:22:11 -07:00
scrolling Bug 685516: Mark a couple more tests random. 2012-08-15 13:15:03 -07:00
selection
svg Merge m-c to b-s. 2012-08-14 11:14:40 -07:00
tab-size
table-anonymous-boxes
table-background Bug 685516: Disable a bunch of failing tests on Android XUL. r=jrmuizel 2012-08-13 11:22:11 -07:00
table-bordercollapse Bug 248239 - Change standards mode height calculations for table cells to use content-box sizing rather than border-box sizing by default (and to honor -moz-box-sizing, which we do not do in quirks mode). Also remove -moz-box-sizing: border-box from default style for caption element (all modes). r=dbaron 2012-06-30 12:01:31 -04:00
table-dom
table-width
text Only do hyphenation when the language was specified explicitly, rather than using an encoding-inferred language. (Bug 702121, patch 2) r=jfkthame 2012-08-20 19:23:32 -07:00
text-decoration Bug 537230 part.1 Paint connection of complex style decoration lines smoothly r=roc 2012-07-04 14:59:50 +09:00
text-indent
text-overflow Bug 539356 - Part 33 - Change test-overflow/single-value reftest to use MozReftestInvalidate. r=roc 2012-08-13 22:11:16 +12:00
text-shadow bug 721750 - reftests for text-shadow in ::-moz-selection. r=dbaron 2012-08-04 19:52:24 +01:00
text-transform
transform Backing out f89374c446c2 for build bustage (bug 691591) 2012-08-10 23:55:51 +12:00
transform-3d Bug 770629 (Divs aren't rendered when using CSS 3D transforms) regression test for DLBI. r=mattwoodrow. 2012-07-18 12:50:10 -04:00
unicode
view-source
w3c-css Bug 782610 - Fix format of @supports tests. r=dbaron 2012-08-23 11:25:05 +10:00
webm-video Bug 778995 - Mark webm-video/zoomed-1.xhtml and ogg-video/zoomed-1.xhtml fuzzy for slight color difference when SVG display lists are enabled. r=kinetik. 2012-08-01 23:39:13 +01:00
xul
xul-document-load
z-index
filters.svg
Makefile.in Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
reftest.list Fix reftest bustage from changeset aa86bacc7e57. (Bug 691950) 2012-08-20 23:01:57 -07:00