Changeset 88913 in webkit
- Timestamp:
- Jun 15, 2011 1:02:37 AM (13 years ago)
- Location:
- trunk
- Files:
-
- 660 added
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r88910 r88913 1 2011-06-15 Nikolas Zimmermann <nzimmermann@rim.com> 2 3 Reviewed by David Hyatt. 4 5 CSS 2.1: Support replaced elements with relative intrinsic sizes 6 https://bugs.webkit.org/show_bug.cgi?id=15849 7 8 CSS 2.1 failure: html4/replaced-intrinsic-ratio-001 9 https://bugs.webkit.org/show_bug.cgi?id=53099 10 11 Imported all CSS 2.1 tests named *replaced* and *intrinsic* (except the still failing background-intrinsic-*) tests. 12 All of these pass now, except block-non-replaced-width-008.htm which is unrelated to this patch. 13 14 * css2.1/20110323: Added. 15 * css2.1/20110323/absolute-non-replaced-height-001.htm: Added. 16 * css2.1/20110323/absolute-non-replaced-height-002.htm: Added. 17 * css2.1/20110323/absolute-non-replaced-height-003.htm: Added. 18 * css2.1/20110323/absolute-non-replaced-height-004.htm: Added. 19 * css2.1/20110323/absolute-non-replaced-height-005.htm: Added. 20 * css2.1/20110323/absolute-non-replaced-height-006.htm: Added. 21 * css2.1/20110323/absolute-non-replaced-height-007.htm: Added. 22 * css2.1/20110323/absolute-non-replaced-height-008.htm: Added. 23 * css2.1/20110323/absolute-non-replaced-height-009.htm: Added. 24 * css2.1/20110323/absolute-non-replaced-height-010.htm: Added. 25 * css2.1/20110323/absolute-non-replaced-height-011.htm: Added. 26 * css2.1/20110323/absolute-non-replaced-height-012.htm: Added. 27 * css2.1/20110323/absolute-non-replaced-max-height-001.htm: Added. 28 * css2.1/20110323/absolute-non-replaced-max-height-002.htm: Added. 29 * css2.1/20110323/absolute-non-replaced-max-height-003.htm: Added. 30 * css2.1/20110323/absolute-non-replaced-max-height-004.htm: Added. 31 * css2.1/20110323/absolute-non-replaced-max-height-005.htm: Added. 32 * css2.1/20110323/absolute-non-replaced-max-height-006.htm: Added. 33 * css2.1/20110323/absolute-non-replaced-max-height-007.htm: Added. 34 * css2.1/20110323/absolute-non-replaced-max-height-008.htm: Added. 35 * css2.1/20110323/absolute-non-replaced-max-height-009.htm: Added. 36 * css2.1/20110323/absolute-non-replaced-max-height-010.htm: Added. 37 * css2.1/20110323/absolute-non-replaced-max-height-011.htm: Added. 38 * css2.1/20110323/absolute-non-replaced-max-height-012.htm: Added. 39 * css2.1/20110323/absolute-non-replaced-width-001.htm: Added. 40 * css2.1/20110323/absolute-non-replaced-width-002.htm: Added. 41 * css2.1/20110323/absolute-non-replaced-width-003.htm: Added. 42 * css2.1/20110323/absolute-non-replaced-width-004.htm: Added. 43 * css2.1/20110323/absolute-non-replaced-width-005.htm: Added. 44 * css2.1/20110323/absolute-non-replaced-width-006.htm: Added. 45 * css2.1/20110323/absolute-non-replaced-width-007.htm: Added. 46 * css2.1/20110323/absolute-non-replaced-width-008.htm: Added. 47 * css2.1/20110323/absolute-non-replaced-width-009.htm: Added. 48 * css2.1/20110323/absolute-non-replaced-width-010.htm: Added. 49 * css2.1/20110323/absolute-non-replaced-width-011.htm: Added. 50 * css2.1/20110323/absolute-non-replaced-width-012.htm: Added. 51 * css2.1/20110323/absolute-non-replaced-width-013.htm: Added. 52 * css2.1/20110323/absolute-non-replaced-width-014.htm: Added. 53 * css2.1/20110323/absolute-non-replaced-width-015.htm: Added. 54 * css2.1/20110323/absolute-non-replaced-width-016.htm: Added. 55 * css2.1/20110323/absolute-non-replaced-width-017.htm: Added. 56 * css2.1/20110323/absolute-non-replaced-width-018.htm: Added. 57 * css2.1/20110323/absolute-non-replaced-width-019.htm: Added. 58 * css2.1/20110323/absolute-non-replaced-width-020.htm: Added. 59 * css2.1/20110323/absolute-non-replaced-width-021.htm: Added. 60 * css2.1/20110323/absolute-non-replaced-width-022.htm: Added. 61 * css2.1/20110323/absolute-non-replaced-width-023.htm: Added. 62 * css2.1/20110323/absolute-non-replaced-width-024.htm: Added. 63 * css2.1/20110323/absolute-replaced-height-001.htm: Added. 64 * css2.1/20110323/absolute-replaced-height-002.htm: Added. 65 * css2.1/20110323/absolute-replaced-height-003.htm: Added. 66 * css2.1/20110323/absolute-replaced-height-004.htm: Added. 67 * css2.1/20110323/absolute-replaced-height-005.htm: Added. 68 * css2.1/20110323/absolute-replaced-height-007.htm: Added. 69 * css2.1/20110323/absolute-replaced-height-008.htm: Added. 70 * css2.1/20110323/absolute-replaced-height-009.htm: Added. 71 * css2.1/20110323/absolute-replaced-height-010.htm: Added. 72 * css2.1/20110323/absolute-replaced-height-011.htm: Added. 73 * css2.1/20110323/absolute-replaced-height-012.htm: Added. 74 * css2.1/20110323/absolute-replaced-height-014.htm: Added. 75 * css2.1/20110323/absolute-replaced-height-016.htm: Added. 76 * css2.1/20110323/absolute-replaced-height-017.htm: Added. 77 * css2.1/20110323/absolute-replaced-height-018.htm: Added. 78 * css2.1/20110323/absolute-replaced-height-019.htm: Added. 79 * css2.1/20110323/absolute-replaced-height-021.htm: Added. 80 * css2.1/20110323/absolute-replaced-height-022.htm: Added. 81 * css2.1/20110323/absolute-replaced-height-023.htm: Added. 82 * css2.1/20110323/absolute-replaced-height-024.htm: Added. 83 * css2.1/20110323/absolute-replaced-height-025.htm: Added. 84 * css2.1/20110323/absolute-replaced-height-026.htm: Added. 85 * css2.1/20110323/absolute-replaced-height-028.htm: Added. 86 * css2.1/20110323/absolute-replaced-height-029.htm: Added. 87 * css2.1/20110323/absolute-replaced-height-030.htm: Added. 88 * css2.1/20110323/absolute-replaced-height-031.htm: Added. 89 * css2.1/20110323/absolute-replaced-height-032.htm: Added. 90 * css2.1/20110323/absolute-replaced-height-033.htm: Added. 91 * css2.1/20110323/absolute-replaced-height-035.htm: Added. 92 * css2.1/20110323/absolute-replaced-height-036.htm: Added. 93 * css2.1/20110323/absolute-replaced-width-001.htm: Added. 94 * css2.1/20110323/absolute-replaced-width-006.htm: Added. 95 * css2.1/20110323/absolute-replaced-width-008.htm: Added. 96 * css2.1/20110323/absolute-replaced-width-013.htm: Added. 97 * css2.1/20110323/absolute-replaced-width-015.htm: Added. 98 * css2.1/20110323/absolute-replaced-width-020.htm: Added. 99 * css2.1/20110323/absolute-replaced-width-022.htm: Added. 100 * css2.1/20110323/absolute-replaced-width-027.htm: Added. 101 * css2.1/20110323/absolute-replaced-width-029.htm: Added. 102 * css2.1/20110323/absolute-replaced-width-034.htm: Added. 103 * css2.1/20110323/absolute-replaced-width-036.htm: Added. 104 * css2.1/20110323/absolute-replaced-width-041.htm: Added. 105 * css2.1/20110323/absolute-replaced-width-043.htm: Added. 106 * css2.1/20110323/absolute-replaced-width-048.htm: Added. 107 * css2.1/20110323/absolute-replaced-width-050.htm: Added. 108 * css2.1/20110323/absolute-replaced-width-055.htm: Added. 109 * css2.1/20110323/absolute-replaced-width-057.htm: Added. 110 * css2.1/20110323/absolute-replaced-width-062.htm: Added. 111 * css2.1/20110323/absolute-replaced-width-064.htm: Added. 112 * css2.1/20110323/absolute-replaced-width-069.htm: Added. 113 * css2.1/20110323/absolute-replaced-width-071.htm: Added. 114 * css2.1/20110323/absolute-replaced-width-076.htm: Added. 115 * css2.1/20110323/abspos-non-replaced-width-margin-000-ref.htm: Added. 116 * css2.1/20110323/abspos-non-replaced-width-margin-000.htm: Added. 117 * css2.1/20110323/abspos-replaced-width-margin-000-ref.htm: Added. 118 * css2.1/20110323/abspos-replaced-width-margin-000.htm: Added. 119 * css2.1/20110323/block-non-replaced-height-001.htm: Added. 120 * css2.1/20110323/block-non-replaced-height-002.htm: Added. 121 * css2.1/20110323/block-non-replaced-height-003.htm: Added. 122 * css2.1/20110323/block-non-replaced-height-004.htm: Added. 123 * css2.1/20110323/block-non-replaced-height-005.htm: Added. 124 * css2.1/20110323/block-non-replaced-height-006.htm: Added. 125 * css2.1/20110323/block-non-replaced-height-007.htm: Added. 126 * css2.1/20110323/block-non-replaced-height-008.htm: Added. 127 * css2.1/20110323/block-non-replaced-height-009.htm: Added. 128 * css2.1/20110323/block-non-replaced-height-010.htm: Added. 129 * css2.1/20110323/block-non-replaced-height-011.htm: Added. 130 * css2.1/20110323/block-non-replaced-height-012.htm: Added. 131 * css2.1/20110323/block-non-replaced-height-013.htm: Added. 132 * css2.1/20110323/block-non-replaced-height-014.htm: Added. 133 * css2.1/20110323/block-non-replaced-height-015.htm: Added. 134 * css2.1/20110323/block-non-replaced-height-016.htm: Added. 135 * css2.1/20110323/block-non-replaced-width-001.htm: Added. 136 * css2.1/20110323/block-non-replaced-width-002.htm: Added. 137 * css2.1/20110323/block-non-replaced-width-003.htm: Added. 138 * css2.1/20110323/block-non-replaced-width-004.htm: Added. 139 * css2.1/20110323/block-non-replaced-width-005.htm: Added. 140 * css2.1/20110323/block-non-replaced-width-006.htm: Added. 141 * css2.1/20110323/block-non-replaced-width-007.htm: Added. 142 * css2.1/20110323/block-non-replaced-width-008.htm: Added. 143 * css2.1/20110323/block-replaced-height-001.htm: Added. 144 * css2.1/20110323/block-replaced-height-002.htm: Added. 145 * css2.1/20110323/block-replaced-height-003.htm: Added. 146 * css2.1/20110323/block-replaced-height-004.htm: Added. 147 * css2.1/20110323/block-replaced-height-005.htm: Added. 148 * css2.1/20110323/block-replaced-height-007.htm: Added. 149 * css2.1/20110323/block-replaced-width-001.htm: Added. 150 * css2.1/20110323/block-replaced-width-006.htm: Added. 151 * css2.1/20110323/float-non-replaced-height-001.htm: Added. 152 * css2.1/20110323/float-non-replaced-width-001.htm: Added. 153 * css2.1/20110323/float-non-replaced-width-002.htm: Added. 154 * css2.1/20110323/float-non-replaced-width-003.htm: Added. 155 * css2.1/20110323/float-non-replaced-width-004.htm: Added. 156 * css2.1/20110323/float-non-replaced-width-005.htm: Added. 157 * css2.1/20110323/float-non-replaced-width-006.htm: Added. 158 * css2.1/20110323/float-non-replaced-width-007.htm: Added. 159 * css2.1/20110323/float-non-replaced-width-008.htm: Added. 160 * css2.1/20110323/float-non-replaced-width-009.htm: Added. 161 * css2.1/20110323/float-non-replaced-width-010.htm: Added. 162 * css2.1/20110323/float-non-replaced-width-011.htm: Added. 163 * css2.1/20110323/float-non-replaced-width-012.htm: Added. 164 * css2.1/20110323/float-replaced-height-001.htm: Added. 165 * css2.1/20110323/float-replaced-height-002.htm: Added. 166 * css2.1/20110323/float-replaced-height-003.htm: Added. 167 * css2.1/20110323/float-replaced-height-004.htm: Added. 168 * css2.1/20110323/float-replaced-height-005.htm: Added. 169 * css2.1/20110323/float-replaced-height-007.htm: Added. 170 * css2.1/20110323/float-replaced-width-001.htm: Added. 171 * css2.1/20110323/float-replaced-width-002.htm: Added. 172 * css2.1/20110323/float-replaced-width-003.htm: Added. 173 * css2.1/20110323/float-replaced-width-004.htm: Added. 174 * css2.1/20110323/float-replaced-width-005.htm: Added. 175 * css2.1/20110323/float-replaced-width-006.htm: Added. 176 * css2.1/20110323/float-replaced-width-011.htm: Added. 177 * css2.1/20110323/inline-block-non-replaced-height-001.htm: Added. 178 * css2.1/20110323/inline-block-non-replaced-height-002.htm: Added. 179 * css2.1/20110323/inline-block-non-replaced-width-001.htm: Added. 180 * css2.1/20110323/inline-block-non-replaced-width-002.htm: Added. 181 * css2.1/20110323/inline-block-non-replaced-width-003.htm: Added. 182 * css2.1/20110323/inline-block-non-replaced-width-004.htm: Added. 183 * css2.1/20110323/inline-block-replaced-height-001.htm: Added. 184 * css2.1/20110323/inline-block-replaced-height-002.htm: Added. 185 * css2.1/20110323/inline-block-replaced-height-003.htm: Added. 186 * css2.1/20110323/inline-block-replaced-height-004.htm: Added. 187 * css2.1/20110323/inline-block-replaced-height-005.htm: Added. 188 * css2.1/20110323/inline-block-replaced-height-007.htm: Added. 189 * css2.1/20110323/inline-block-replaced-width-001.htm: Added. 190 * css2.1/20110323/inline-block-replaced-width-006.htm: Added. 191 * css2.1/20110323/inline-non-replaced-height-002.htm: Added. 192 * css2.1/20110323/inline-non-replaced-height-003.htm: Added. 193 * css2.1/20110323/inline-non-replaced-width-001.htm: Added. 194 * css2.1/20110323/inline-non-replaced-width-002.htm: Added. 195 * css2.1/20110323/inline-replaced-height-001.htm: Added. 196 * css2.1/20110323/inline-replaced-height-002.htm: Added. 197 * css2.1/20110323/inline-replaced-height-003.htm: Added. 198 * css2.1/20110323/inline-replaced-height-004.htm: Added. 199 * css2.1/20110323/inline-replaced-height-005.htm: Added. 200 * css2.1/20110323/inline-replaced-height-007.htm: Added. 201 * css2.1/20110323/inline-replaced-width-001.htm: Added. 202 * css2.1/20110323/inline-replaced-width-006.htm: Added. 203 * css2.1/20110323/inline-replaced-width-011.htm: Added. 204 * css2.1/20110323/inline-replaced-width-012.htm: Added. 205 * css2.1/20110323/inline-replaced-width-013.htm: Added. 206 * css2.1/20110323/inline-replaced-width-014.htm: Added. 207 * css2.1/20110323/inline-replaced-width-015.htm: Added. 208 * css2.1/20110323/replaced-elements-001.htm: Added. 209 * css2.1/20110323/replaced-intrinsic-001.htm: Added. 210 * css2.1/20110323/replaced-intrinsic-002.htm: Added. 211 * css2.1/20110323/replaced-intrinsic-003.htm: Added. 212 * css2.1/20110323/replaced-intrinsic-004.htm: Added. 213 * css2.1/20110323/replaced-intrinsic-005.htm: Added. 214 * css2.1/20110323/replaced-intrinsic-ratio-001.htm: Added. 215 * css2.1/20110323/replaced-min-max-001.htm: Added. 216 * css2.1/20110323/resources: Added. 217 * css2.1/20110323/resources/1x1-green.png: Added. 218 * css2.1/20110323/resources/1x1-lime.png: Added. 219 * css2.1/20110323/resources/1x1-red.png: Added. 220 * css2.1/20110323/resources/abspos-replaced-width-margin-000-narrow.png: Added. 221 * css2.1/20110323/resources/abspos-replaced-width-margin-000-wide.png: Added. 222 * css2.1/20110323/resources/blue15x15.png: Added. 223 * css2.1/20110323/resources/blue96x96.png: Added. 224 * css2.1/20110323/resources/intrinsic-ratio.svg: Added. 225 * css2.1/20110323/resources/replaced-intrinsic-001.svg: Added. 226 * css2.1/20110323/resources/replaced-intrinsic-002.svg: Added. 227 * css2.1/20110323/resources/replaced-intrinsic-003.svg: Added. 228 * css2.1/20110323/resources/replaced-intrinsic-004.svg: Added. 229 * css2.1/20110323/resources/replaced-intrinsic-005.svg: Added. 230 * css2.1/20110323/resources/replaced-min-max-1.png: Added. 231 * css2.1/20110323/resources/replaced-min-max-10.png: Added. 232 * css2.1/20110323/resources/replaced-min-max-11.png: Added. 233 * css2.1/20110323/resources/replaced-min-max-12.png: Added. 234 * css2.1/20110323/resources/replaced-min-max-13.png: Added. 235 * css2.1/20110323/resources/replaced-min-max-14.png: Added. 236 * css2.1/20110323/resources/replaced-min-max-15.png: Added. 237 * css2.1/20110323/resources/replaced-min-max-16.png: Added. 238 * css2.1/20110323/resources/replaced-min-max-17.png: Added. 239 * css2.1/20110323/resources/replaced-min-max-18.png: Added. 240 * css2.1/20110323/resources/replaced-min-max-19.png: Added. 241 * css2.1/20110323/resources/replaced-min-max-2.png: Added. 242 * css2.1/20110323/resources/replaced-min-max-3.png: Added. 243 * css2.1/20110323/resources/replaced-min-max-4.png: Added. 244 * css2.1/20110323/resources/replaced-min-max-5.png: Added. 245 * css2.1/20110323/resources/replaced-min-max-6.png: Added. 246 * css2.1/20110323/resources/replaced-min-max-7.png: Added. 247 * css2.1/20110323/resources/replaced-min-max-8.png: Added. 248 * css2.1/20110323/resources/replaced-min-max-9.png: Added. 249 * css2.1/20110323/resources/replaced-min-max.png: Added. 250 * css2.1/20110323/resources/swatch-green.png: Added. 251 * css2.1/20110323/resources/swatch-white.png: Added. 252 * css2.1/20110323/resources/test-bl.png: Added. 253 * css2.1/20110323/resources/test-br.png: Added. 254 * css2.1/20110323/resources/test-tl.png: Added. 255 * css2.1/20110323/resources/test-tr.png: Added. 256 * css2.1/20110323/width-non-replaced-inline-001.htm: Added. 257 * css2.1/20110323/width-replaced-element-001.htm: Added. 258 * http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm: Added. 259 * http/tests/misc/resources/intrinsic-ratio-slow.pl: Added. 260 * http/tests/misc/resources/intrinsic-ratio.svg: Added. 261 * platform/mac/css2.1/20110323: Added. 262 * platform/mac/css2.1/20110323/absolute-non-replaced-height-001-expected.png: Added. 263 * platform/mac/css2.1/20110323/absolute-non-replaced-height-001-expected.txt: Added. 264 * platform/mac/css2.1/20110323/absolute-non-replaced-height-002-expected.png: Added. 265 * platform/mac/css2.1/20110323/absolute-non-replaced-height-002-expected.txt: Added. 266 * platform/mac/css2.1/20110323/absolute-non-replaced-height-003-expected.png: Added. 267 * platform/mac/css2.1/20110323/absolute-non-replaced-height-003-expected.txt: Added. 268 * platform/mac/css2.1/20110323/absolute-non-replaced-height-004-expected.png: Added. 269 * platform/mac/css2.1/20110323/absolute-non-replaced-height-004-expected.txt: Added. 270 * platform/mac/css2.1/20110323/absolute-non-replaced-height-005-expected.png: Added. 271 * platform/mac/css2.1/20110323/absolute-non-replaced-height-005-expected.txt: Added. 272 * platform/mac/css2.1/20110323/absolute-non-replaced-height-006-expected.png: Added. 273 * platform/mac/css2.1/20110323/absolute-non-replaced-height-006-expected.txt: Added. 274 * platform/mac/css2.1/20110323/absolute-non-replaced-height-007-expected.png: Added. 275 * platform/mac/css2.1/20110323/absolute-non-replaced-height-007-expected.txt: Added. 276 * platform/mac/css2.1/20110323/absolute-non-replaced-height-008-expected.png: Added. 277 * platform/mac/css2.1/20110323/absolute-non-replaced-height-008-expected.txt: Added. 278 * platform/mac/css2.1/20110323/absolute-non-replaced-height-009-expected.png: Added. 279 * platform/mac/css2.1/20110323/absolute-non-replaced-height-009-expected.txt: Added. 280 * platform/mac/css2.1/20110323/absolute-non-replaced-height-010-expected.png: Added. 281 * platform/mac/css2.1/20110323/absolute-non-replaced-height-010-expected.txt: Added. 282 * platform/mac/css2.1/20110323/absolute-non-replaced-height-011-expected.png: Added. 283 * platform/mac/css2.1/20110323/absolute-non-replaced-height-011-expected.txt: Added. 284 * platform/mac/css2.1/20110323/absolute-non-replaced-height-012-expected.png: Added. 285 * platform/mac/css2.1/20110323/absolute-non-replaced-height-012-expected.txt: Added. 286 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-001-expected.png: Added. 287 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-001-expected.txt: Added. 288 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-002-expected.png: Added. 289 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-002-expected.txt: Added. 290 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-003-expected.png: Added. 291 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-003-expected.txt: Added. 292 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-004-expected.png: Added. 293 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-004-expected.txt: Added. 294 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-005-expected.png: Added. 295 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-005-expected.txt: Added. 296 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-006-expected.png: Added. 297 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-006-expected.txt: Added. 298 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-007-expected.png: Added. 299 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-007-expected.txt: Added. 300 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-008-expected.png: Added. 301 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-008-expected.txt: Added. 302 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-009-expected.png: Added. 303 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-009-expected.txt: Added. 304 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-010-expected.png: Added. 305 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-010-expected.txt: Added. 306 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-011-expected.png: Added. 307 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-011-expected.txt: Added. 308 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-012-expected.png: Added. 309 * platform/mac/css2.1/20110323/absolute-non-replaced-max-height-012-expected.txt: Added. 310 * platform/mac/css2.1/20110323/absolute-non-replaced-width-001-expected.png: Added. 311 * platform/mac/css2.1/20110323/absolute-non-replaced-width-001-expected.txt: Added. 312 * platform/mac/css2.1/20110323/absolute-non-replaced-width-002-expected.png: Added. 313 * platform/mac/css2.1/20110323/absolute-non-replaced-width-002-expected.txt: Added. 314 * platform/mac/css2.1/20110323/absolute-non-replaced-width-003-expected.png: Added. 315 * platform/mac/css2.1/20110323/absolute-non-replaced-width-003-expected.txt: Added. 316 * platform/mac/css2.1/20110323/absolute-non-replaced-width-004-expected.png: Added. 317 * platform/mac/css2.1/20110323/absolute-non-replaced-width-004-expected.txt: Added. 318 * platform/mac/css2.1/20110323/absolute-non-replaced-width-005-expected.png: Added. 319 * platform/mac/css2.1/20110323/absolute-non-replaced-width-005-expected.txt: Added. 320 * platform/mac/css2.1/20110323/absolute-non-replaced-width-006-expected.png: Added. 321 * platform/mac/css2.1/20110323/absolute-non-replaced-width-006-expected.txt: Added. 322 * platform/mac/css2.1/20110323/absolute-non-replaced-width-007-expected.png: Added. 323 * platform/mac/css2.1/20110323/absolute-non-replaced-width-007-expected.txt: Added. 324 * platform/mac/css2.1/20110323/absolute-non-replaced-width-008-expected.png: Added. 325 * platform/mac/css2.1/20110323/absolute-non-replaced-width-008-expected.txt: Added. 326 * platform/mac/css2.1/20110323/absolute-non-replaced-width-009-expected.png: Added. 327 * platform/mac/css2.1/20110323/absolute-non-replaced-width-009-expected.txt: Added. 328 * platform/mac/css2.1/20110323/absolute-non-replaced-width-010-expected.png: Added. 329 * platform/mac/css2.1/20110323/absolute-non-replaced-width-010-expected.txt: Added. 330 * platform/mac/css2.1/20110323/absolute-non-replaced-width-011-expected.png: Added. 331 * platform/mac/css2.1/20110323/absolute-non-replaced-width-011-expected.txt: Added. 332 * platform/mac/css2.1/20110323/absolute-non-replaced-width-012-expected.png: Added. 333 * platform/mac/css2.1/20110323/absolute-non-replaced-width-012-expected.txt: Added. 334 * platform/mac/css2.1/20110323/absolute-non-replaced-width-013-expected.png: Added. 335 * platform/mac/css2.1/20110323/absolute-non-replaced-width-013-expected.txt: Added. 336 * platform/mac/css2.1/20110323/absolute-non-replaced-width-014-expected.png: Added. 337 * platform/mac/css2.1/20110323/absolute-non-replaced-width-014-expected.txt: Added. 338 * platform/mac/css2.1/20110323/absolute-non-replaced-width-015-expected.png: Added. 339 * platform/mac/css2.1/20110323/absolute-non-replaced-width-015-expected.txt: Added. 340 * platform/mac/css2.1/20110323/absolute-non-replaced-width-016-expected.png: Added. 341 * platform/mac/css2.1/20110323/absolute-non-replaced-width-016-expected.txt: Added. 342 * platform/mac/css2.1/20110323/absolute-non-replaced-width-017-expected.png: Added. 343 * platform/mac/css2.1/20110323/absolute-non-replaced-width-017-expected.txt: Added. 344 * platform/mac/css2.1/20110323/absolute-non-replaced-width-018-expected.png: Added. 345 * platform/mac/css2.1/20110323/absolute-non-replaced-width-018-expected.txt: Added. 346 * platform/mac/css2.1/20110323/absolute-non-replaced-width-019-expected.png: Added. 347 * platform/mac/css2.1/20110323/absolute-non-replaced-width-019-expected.txt: Added. 348 * platform/mac/css2.1/20110323/absolute-non-replaced-width-020-expected.png: Added. 349 * platform/mac/css2.1/20110323/absolute-non-replaced-width-020-expected.txt: Added. 350 * platform/mac/css2.1/20110323/absolute-non-replaced-width-021-expected.png: Added. 351 * platform/mac/css2.1/20110323/absolute-non-replaced-width-021-expected.txt: Added. 352 * platform/mac/css2.1/20110323/absolute-non-replaced-width-022-expected.png: Added. 353 * platform/mac/css2.1/20110323/absolute-non-replaced-width-022-expected.txt: Added. 354 * platform/mac/css2.1/20110323/absolute-non-replaced-width-023-expected.png: Added. 355 * platform/mac/css2.1/20110323/absolute-non-replaced-width-023-expected.txt: Added. 356 * platform/mac/css2.1/20110323/absolute-non-replaced-width-024-expected.png: Added. 357 * platform/mac/css2.1/20110323/absolute-non-replaced-width-024-expected.txt: Added. 358 * platform/mac/css2.1/20110323/absolute-replaced-height-001-expected.png: Added. 359 * platform/mac/css2.1/20110323/absolute-replaced-height-001-expected.txt: Added. 360 * platform/mac/css2.1/20110323/absolute-replaced-height-002-expected.png: Added. 361 * platform/mac/css2.1/20110323/absolute-replaced-height-002-expected.txt: Added. 362 * platform/mac/css2.1/20110323/absolute-replaced-height-003-expected.png: Added. 363 * platform/mac/css2.1/20110323/absolute-replaced-height-003-expected.txt: Added. 364 * platform/mac/css2.1/20110323/absolute-replaced-height-004-expected.png: Added. 365 * platform/mac/css2.1/20110323/absolute-replaced-height-004-expected.txt: Added. 366 * platform/mac/css2.1/20110323/absolute-replaced-height-005-expected.png: Added. 367 * platform/mac/css2.1/20110323/absolute-replaced-height-005-expected.txt: Added. 368 * platform/mac/css2.1/20110323/absolute-replaced-height-007-expected.png: Added. 369 * platform/mac/css2.1/20110323/absolute-replaced-height-007-expected.txt: Added. 370 * platform/mac/css2.1/20110323/absolute-replaced-height-008-expected.png: Added. 371 * platform/mac/css2.1/20110323/absolute-replaced-height-008-expected.txt: Added. 372 * platform/mac/css2.1/20110323/absolute-replaced-height-009-expected.png: Added. 373 * platform/mac/css2.1/20110323/absolute-replaced-height-009-expected.txt: Added. 374 * platform/mac/css2.1/20110323/absolute-replaced-height-010-expected.png: Added. 375 * platform/mac/css2.1/20110323/absolute-replaced-height-010-expected.txt: Added. 376 * platform/mac/css2.1/20110323/absolute-replaced-height-011-expected.png: Added. 377 * platform/mac/css2.1/20110323/absolute-replaced-height-011-expected.txt: Added. 378 * platform/mac/css2.1/20110323/absolute-replaced-height-012-expected.png: Added. 379 * platform/mac/css2.1/20110323/absolute-replaced-height-012-expected.txt: Added. 380 * platform/mac/css2.1/20110323/absolute-replaced-height-014-expected.png: Added. 381 * platform/mac/css2.1/20110323/absolute-replaced-height-014-expected.txt: Added. 382 * platform/mac/css2.1/20110323/absolute-replaced-height-016-expected.png: Added. 383 * platform/mac/css2.1/20110323/absolute-replaced-height-016-expected.txt: Added. 384 * platform/mac/css2.1/20110323/absolute-replaced-height-017-expected.png: Added. 385 * platform/mac/css2.1/20110323/absolute-replaced-height-017-expected.txt: Added. 386 * platform/mac/css2.1/20110323/absolute-replaced-height-018-expected.png: Added. 387 * platform/mac/css2.1/20110323/absolute-replaced-height-018-expected.txt: Added. 388 * platform/mac/css2.1/20110323/absolute-replaced-height-019-expected.png: Added. 389 * platform/mac/css2.1/20110323/absolute-replaced-height-019-expected.txt: Added. 390 * platform/mac/css2.1/20110323/absolute-replaced-height-021-expected.png: Added. 391 * platform/mac/css2.1/20110323/absolute-replaced-height-021-expected.txt: Added. 392 * platform/mac/css2.1/20110323/absolute-replaced-height-022-expected.png: Added. 393 * platform/mac/css2.1/20110323/absolute-replaced-height-022-expected.txt: Added. 394 * platform/mac/css2.1/20110323/absolute-replaced-height-023-expected.png: Added. 395 * platform/mac/css2.1/20110323/absolute-replaced-height-023-expected.txt: Added. 396 * platform/mac/css2.1/20110323/absolute-replaced-height-024-expected.png: Added. 397 * platform/mac/css2.1/20110323/absolute-replaced-height-024-expected.txt: Added. 398 * platform/mac/css2.1/20110323/absolute-replaced-height-025-expected.png: Added. 399 * platform/mac/css2.1/20110323/absolute-replaced-height-025-expected.txt: Added. 400 * platform/mac/css2.1/20110323/absolute-replaced-height-026-expected.png: Added. 401 * platform/mac/css2.1/20110323/absolute-replaced-height-026-expected.txt: Added. 402 * platform/mac/css2.1/20110323/absolute-replaced-height-028-expected.png: Added. 403 * platform/mac/css2.1/20110323/absolute-replaced-height-028-expected.txt: Added. 404 * platform/mac/css2.1/20110323/absolute-replaced-height-029-expected.png: Added. 405 * platform/mac/css2.1/20110323/absolute-replaced-height-029-expected.txt: Added. 406 * platform/mac/css2.1/20110323/absolute-replaced-height-030-expected.png: Added. 407 * platform/mac/css2.1/20110323/absolute-replaced-height-030-expected.txt: Added. 408 * platform/mac/css2.1/20110323/absolute-replaced-height-031-expected.png: Added. 409 * platform/mac/css2.1/20110323/absolute-replaced-height-031-expected.txt: Added. 410 * platform/mac/css2.1/20110323/absolute-replaced-height-032-expected.png: Added. 411 * platform/mac/css2.1/20110323/absolute-replaced-height-032-expected.txt: Added. 412 * platform/mac/css2.1/20110323/absolute-replaced-height-033-expected.png: Added. 413 * platform/mac/css2.1/20110323/absolute-replaced-height-033-expected.txt: Added. 414 * platform/mac/css2.1/20110323/absolute-replaced-height-035-expected.png: Added. 415 * platform/mac/css2.1/20110323/absolute-replaced-height-035-expected.txt: Added. 416 * platform/mac/css2.1/20110323/absolute-replaced-height-036-expected.png: Added. 417 * platform/mac/css2.1/20110323/absolute-replaced-height-036-expected.txt: Added. 418 * platform/mac/css2.1/20110323/absolute-replaced-width-001-expected.png: Added. 419 * platform/mac/css2.1/20110323/absolute-replaced-width-001-expected.txt: Added. 420 * platform/mac/css2.1/20110323/absolute-replaced-width-006-expected.png: Added. 421 * platform/mac/css2.1/20110323/absolute-replaced-width-006-expected.txt: Added. 422 * platform/mac/css2.1/20110323/absolute-replaced-width-008-expected.png: Added. 423 * platform/mac/css2.1/20110323/absolute-replaced-width-008-expected.txt: Added. 424 * platform/mac/css2.1/20110323/absolute-replaced-width-013-expected.png: Added. 425 * platform/mac/css2.1/20110323/absolute-replaced-width-013-expected.txt: Added. 426 * platform/mac/css2.1/20110323/absolute-replaced-width-015-expected.png: Added. 427 * platform/mac/css2.1/20110323/absolute-replaced-width-015-expected.txt: Added. 428 * platform/mac/css2.1/20110323/absolute-replaced-width-020-expected.png: Added. 429 * platform/mac/css2.1/20110323/absolute-replaced-width-020-expected.txt: Added. 430 * platform/mac/css2.1/20110323/absolute-replaced-width-022-expected.png: Added. 431 * platform/mac/css2.1/20110323/absolute-replaced-width-022-expected.txt: Added. 432 * platform/mac/css2.1/20110323/absolute-replaced-width-027-expected.png: Added. 433 * platform/mac/css2.1/20110323/absolute-replaced-width-027-expected.txt: Added. 434 * platform/mac/css2.1/20110323/absolute-replaced-width-029-expected.png: Added. 435 * platform/mac/css2.1/20110323/absolute-replaced-width-029-expected.txt: Added. 436 * platform/mac/css2.1/20110323/absolute-replaced-width-034-expected.png: Added. 437 * platform/mac/css2.1/20110323/absolute-replaced-width-034-expected.txt: Added. 438 * platform/mac/css2.1/20110323/absolute-replaced-width-036-expected.png: Added. 439 * platform/mac/css2.1/20110323/absolute-replaced-width-036-expected.txt: Added. 440 * platform/mac/css2.1/20110323/absolute-replaced-width-041-expected.png: Added. 441 * platform/mac/css2.1/20110323/absolute-replaced-width-041-expected.txt: Added. 442 * platform/mac/css2.1/20110323/absolute-replaced-width-043-expected.png: Added. 443 * platform/mac/css2.1/20110323/absolute-replaced-width-043-expected.txt: Added. 444 * platform/mac/css2.1/20110323/absolute-replaced-width-048-expected.png: Added. 445 * platform/mac/css2.1/20110323/absolute-replaced-width-048-expected.txt: Added. 446 * platform/mac/css2.1/20110323/absolute-replaced-width-050-expected.png: Added. 447 * platform/mac/css2.1/20110323/absolute-replaced-width-050-expected.txt: Added. 448 * platform/mac/css2.1/20110323/absolute-replaced-width-055-expected.png: Added. 449 * platform/mac/css2.1/20110323/absolute-replaced-width-055-expected.txt: Added. 450 * platform/mac/css2.1/20110323/absolute-replaced-width-057-expected.png: Added. 451 * platform/mac/css2.1/20110323/absolute-replaced-width-057-expected.txt: Added. 452 * platform/mac/css2.1/20110323/absolute-replaced-width-062-expected.png: Added. 453 * platform/mac/css2.1/20110323/absolute-replaced-width-062-expected.txt: Added. 454 * platform/mac/css2.1/20110323/absolute-replaced-width-064-expected.png: Added. 455 * platform/mac/css2.1/20110323/absolute-replaced-width-064-expected.txt: Added. 456 * platform/mac/css2.1/20110323/absolute-replaced-width-069-expected.png: Added. 457 * platform/mac/css2.1/20110323/absolute-replaced-width-069-expected.txt: Added. 458 * platform/mac/css2.1/20110323/absolute-replaced-width-071-expected.png: Added. 459 * platform/mac/css2.1/20110323/absolute-replaced-width-071-expected.txt: Added. 460 * platform/mac/css2.1/20110323/absolute-replaced-width-076-expected.png: Added. 461 * platform/mac/css2.1/20110323/absolute-replaced-width-076-expected.txt: Added. 462 * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added. 463 * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added. 464 * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added. 465 * platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added. 466 * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added. 467 * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added. 468 * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added. 469 * platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added. 470 * platform/mac/css2.1/20110323/block-non-replaced-height-001-expected.png: Added. 471 * platform/mac/css2.1/20110323/block-non-replaced-height-001-expected.txt: Added. 472 * platform/mac/css2.1/20110323/block-non-replaced-height-002-expected.png: Added. 473 * platform/mac/css2.1/20110323/block-non-replaced-height-002-expected.txt: Added. 474 * platform/mac/css2.1/20110323/block-non-replaced-height-003-expected.png: Added. 475 * platform/mac/css2.1/20110323/block-non-replaced-height-003-expected.txt: Added. 476 * platform/mac/css2.1/20110323/block-non-replaced-height-004-expected.png: Added. 477 * platform/mac/css2.1/20110323/block-non-replaced-height-004-expected.txt: Added. 478 * platform/mac/css2.1/20110323/block-non-replaced-height-005-expected.png: Added. 479 * platform/mac/css2.1/20110323/block-non-replaced-height-005-expected.txt: Added. 480 * platform/mac/css2.1/20110323/block-non-replaced-height-006-expected.png: Added. 481 * platform/mac/css2.1/20110323/block-non-replaced-height-006-expected.txt: Added. 482 * platform/mac/css2.1/20110323/block-non-replaced-height-007-expected.png: Added. 483 * platform/mac/css2.1/20110323/block-non-replaced-height-007-expected.txt: Added. 484 * platform/mac/css2.1/20110323/block-non-replaced-height-008-expected.png: Added. 485 * platform/mac/css2.1/20110323/block-non-replaced-height-008-expected.txt: Added. 486 * platform/mac/css2.1/20110323/block-non-replaced-height-009-expected.png: Added. 487 * platform/mac/css2.1/20110323/block-non-replaced-height-009-expected.txt: Added. 488 * platform/mac/css2.1/20110323/block-non-replaced-height-010-expected.png: Added. 489 * platform/mac/css2.1/20110323/block-non-replaced-height-010-expected.txt: Added. 490 * platform/mac/css2.1/20110323/block-non-replaced-height-011-expected.png: Added. 491 * platform/mac/css2.1/20110323/block-non-replaced-height-011-expected.txt: Added. 492 * platform/mac/css2.1/20110323/block-non-replaced-height-012-expected.png: Added. 493 * platform/mac/css2.1/20110323/block-non-replaced-height-012-expected.txt: Added. 494 * platform/mac/css2.1/20110323/block-non-replaced-height-013-expected.png: Added. 495 * platform/mac/css2.1/20110323/block-non-replaced-height-013-expected.txt: Added. 496 * platform/mac/css2.1/20110323/block-non-replaced-height-014-expected.png: Added. 497 * platform/mac/css2.1/20110323/block-non-replaced-height-014-expected.txt: Added. 498 * platform/mac/css2.1/20110323/block-non-replaced-height-015-expected.png: Added. 499 * platform/mac/css2.1/20110323/block-non-replaced-height-015-expected.txt: Added. 500 * platform/mac/css2.1/20110323/block-non-replaced-height-016-expected.png: Added. 501 * platform/mac/css2.1/20110323/block-non-replaced-height-016-expected.txt: Added. 502 * platform/mac/css2.1/20110323/block-non-replaced-width-001-expected.png: Added. 503 * platform/mac/css2.1/20110323/block-non-replaced-width-001-expected.txt: Added. 504 * platform/mac/css2.1/20110323/block-non-replaced-width-002-expected.png: Added. 505 * platform/mac/css2.1/20110323/block-non-replaced-width-002-expected.txt: Added. 506 * platform/mac/css2.1/20110323/block-non-replaced-width-003-expected.png: Added. 507 * platform/mac/css2.1/20110323/block-non-replaced-width-003-expected.txt: Added. 508 * platform/mac/css2.1/20110323/block-non-replaced-width-004-expected.png: Added. 509 * platform/mac/css2.1/20110323/block-non-replaced-width-004-expected.txt: Added. 510 * platform/mac/css2.1/20110323/block-non-replaced-width-005-expected.png: Added. 511 * platform/mac/css2.1/20110323/block-non-replaced-width-005-expected.txt: Added. 512 * platform/mac/css2.1/20110323/block-non-replaced-width-006-expected.png: Added. 513 * platform/mac/css2.1/20110323/block-non-replaced-width-006-expected.txt: Added. 514 * platform/mac/css2.1/20110323/block-non-replaced-width-007-expected.png: Added. 515 * platform/mac/css2.1/20110323/block-non-replaced-width-007-expected.txt: Added. 516 * platform/mac/css2.1/20110323/block-non-replaced-width-008-expected.png: Added. 517 * platform/mac/css2.1/20110323/block-non-replaced-width-008-expected.txt: Added. 518 * platform/mac/css2.1/20110323/block-replaced-height-001-expected.png: Added. 519 * platform/mac/css2.1/20110323/block-replaced-height-001-expected.txt: Added. 520 * platform/mac/css2.1/20110323/block-replaced-height-002-expected.png: Added. 521 * platform/mac/css2.1/20110323/block-replaced-height-002-expected.txt: Added. 522 * platform/mac/css2.1/20110323/block-replaced-height-003-expected.png: Added. 523 * platform/mac/css2.1/20110323/block-replaced-height-003-expected.txt: Added. 524 * platform/mac/css2.1/20110323/block-replaced-height-004-expected.png: Added. 525 * platform/mac/css2.1/20110323/block-replaced-height-004-expected.txt: Added. 526 * platform/mac/css2.1/20110323/block-replaced-height-005-expected.png: Added. 527 * platform/mac/css2.1/20110323/block-replaced-height-005-expected.txt: Added. 528 * platform/mac/css2.1/20110323/block-replaced-height-007-expected.png: Added. 529 * platform/mac/css2.1/20110323/block-replaced-height-007-expected.txt: Added. 530 * platform/mac/css2.1/20110323/block-replaced-width-001-expected.png: Added. 531 * platform/mac/css2.1/20110323/block-replaced-width-001-expected.txt: Added. 532 * platform/mac/css2.1/20110323/block-replaced-width-006-expected.png: Added. 533 * platform/mac/css2.1/20110323/block-replaced-width-006-expected.txt: Added. 534 * platform/mac/css2.1/20110323/float-non-replaced-height-001-expected.png: Added. 535 * platform/mac/css2.1/20110323/float-non-replaced-height-001-expected.txt: Added. 536 * platform/mac/css2.1/20110323/float-non-replaced-width-001-expected.png: Added. 537 * platform/mac/css2.1/20110323/float-non-replaced-width-001-expected.txt: Added. 538 * platform/mac/css2.1/20110323/float-non-replaced-width-002-expected.png: Added. 539 * platform/mac/css2.1/20110323/float-non-replaced-width-002-expected.txt: Added. 540 * platform/mac/css2.1/20110323/float-non-replaced-width-003-expected.png: Added. 541 * platform/mac/css2.1/20110323/float-non-replaced-width-003-expected.txt: Added. 542 * platform/mac/css2.1/20110323/float-non-replaced-width-004-expected.png: Added. 543 * platform/mac/css2.1/20110323/float-non-replaced-width-004-expected.txt: Added. 544 * platform/mac/css2.1/20110323/float-non-replaced-width-005-expected.png: Added. 545 * platform/mac/css2.1/20110323/float-non-replaced-width-005-expected.txt: Added. 546 * platform/mac/css2.1/20110323/float-non-replaced-width-006-expected.png: Added. 547 * platform/mac/css2.1/20110323/float-non-replaced-width-006-expected.txt: Added. 548 * platform/mac/css2.1/20110323/float-non-replaced-width-007-expected.png: Added. 549 * platform/mac/css2.1/20110323/float-non-replaced-width-007-expected.txt: Added. 550 * platform/mac/css2.1/20110323/float-non-replaced-width-008-expected.png: Added. 551 * platform/mac/css2.1/20110323/float-non-replaced-width-008-expected.txt: Added. 552 * platform/mac/css2.1/20110323/float-non-replaced-width-009-expected.png: Added. 553 * platform/mac/css2.1/20110323/float-non-replaced-width-009-expected.txt: Added. 554 * platform/mac/css2.1/20110323/float-non-replaced-width-010-expected.png: Added. 555 * platform/mac/css2.1/20110323/float-non-replaced-width-010-expected.txt: Added. 556 * platform/mac/css2.1/20110323/float-non-replaced-width-011-expected.png: Added. 557 * platform/mac/css2.1/20110323/float-non-replaced-width-011-expected.txt: Added. 558 * platform/mac/css2.1/20110323/float-non-replaced-width-012-expected.png: Added. 559 * platform/mac/css2.1/20110323/float-non-replaced-width-012-expected.txt: Added. 560 * platform/mac/css2.1/20110323/float-replaced-height-001-expected.png: Added. 561 * platform/mac/css2.1/20110323/float-replaced-height-001-expected.txt: Added. 562 * platform/mac/css2.1/20110323/float-replaced-height-002-expected.png: Added. 563 * platform/mac/css2.1/20110323/float-replaced-height-002-expected.txt: Added. 564 * platform/mac/css2.1/20110323/float-replaced-height-003-expected.png: Added. 565 * platform/mac/css2.1/20110323/float-replaced-height-003-expected.txt: Added. 566 * platform/mac/css2.1/20110323/float-replaced-height-004-expected.png: Added. 567 * platform/mac/css2.1/20110323/float-replaced-height-004-expected.txt: Added. 568 * platform/mac/css2.1/20110323/float-replaced-height-005-expected.png: Added. 569 * platform/mac/css2.1/20110323/float-replaced-height-005-expected.txt: Added. 570 * platform/mac/css2.1/20110323/float-replaced-height-007-expected.png: Added. 571 * platform/mac/css2.1/20110323/float-replaced-height-007-expected.txt: Added. 572 * platform/mac/css2.1/20110323/float-replaced-width-001-expected.png: Added. 573 * platform/mac/css2.1/20110323/float-replaced-width-001-expected.txt: Added. 574 * platform/mac/css2.1/20110323/float-replaced-width-002-expected.png: Added. 575 * platform/mac/css2.1/20110323/float-replaced-width-002-expected.txt: Added. 576 * platform/mac/css2.1/20110323/float-replaced-width-003-expected.png: Added. 577 * platform/mac/css2.1/20110323/float-replaced-width-003-expected.txt: Added. 578 * platform/mac/css2.1/20110323/float-replaced-width-004-expected.png: Added. 579 * platform/mac/css2.1/20110323/float-replaced-width-004-expected.txt: Added. 580 * platform/mac/css2.1/20110323/float-replaced-width-005-expected.png: Added. 581 * platform/mac/css2.1/20110323/float-replaced-width-005-expected.txt: Added. 582 * platform/mac/css2.1/20110323/float-replaced-width-006-expected.png: Added. 583 * platform/mac/css2.1/20110323/float-replaced-width-006-expected.txt: Added. 584 * platform/mac/css2.1/20110323/float-replaced-width-011-expected.png: Added. 585 * platform/mac/css2.1/20110323/float-replaced-width-011-expected.txt: Added. 586 * platform/mac/css2.1/20110323/inline-block-non-replaced-height-001-expected.png: Added. 587 * platform/mac/css2.1/20110323/inline-block-non-replaced-height-001-expected.txt: Added. 588 * platform/mac/css2.1/20110323/inline-block-non-replaced-height-002-expected.png: Added. 589 * platform/mac/css2.1/20110323/inline-block-non-replaced-height-002-expected.txt: Added. 590 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-001-expected.png: Added. 591 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-001-expected.txt: Added. 592 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-002-expected.png: Added. 593 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-002-expected.txt: Added. 594 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-003-expected.png: Added. 595 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-003-expected.txt: Added. 596 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-004-expected.png: Added. 597 * platform/mac/css2.1/20110323/inline-block-non-replaced-width-004-expected.txt: Added. 598 * platform/mac/css2.1/20110323/inline-block-replaced-height-001-expected.png: Added. 599 * platform/mac/css2.1/20110323/inline-block-replaced-height-001-expected.txt: Added. 600 * platform/mac/css2.1/20110323/inline-block-replaced-height-002-expected.png: Added. 601 * platform/mac/css2.1/20110323/inline-block-replaced-height-002-expected.txt: Added. 602 * platform/mac/css2.1/20110323/inline-block-replaced-height-003-expected.png: Added. 603 * platform/mac/css2.1/20110323/inline-block-replaced-height-003-expected.txt: Added. 604 * platform/mac/css2.1/20110323/inline-block-replaced-height-004-expected.png: Added. 605 * platform/mac/css2.1/20110323/inline-block-replaced-height-004-expected.txt: Added. 606 * platform/mac/css2.1/20110323/inline-block-replaced-height-005-expected.png: Added. 607 * platform/mac/css2.1/20110323/inline-block-replaced-height-005-expected.txt: Added. 608 * platform/mac/css2.1/20110323/inline-block-replaced-height-007-expected.png: Added. 609 * platform/mac/css2.1/20110323/inline-block-replaced-height-007-expected.txt: Added. 610 * platform/mac/css2.1/20110323/inline-block-replaced-width-001-expected.png: Added. 611 * platform/mac/css2.1/20110323/inline-block-replaced-width-001-expected.txt: Added. 612 * platform/mac/css2.1/20110323/inline-block-replaced-width-006-expected.png: Added. 613 * platform/mac/css2.1/20110323/inline-block-replaced-width-006-expected.txt: Added. 614 * platform/mac/css2.1/20110323/inline-non-replaced-height-002-expected.png: Added. 615 * platform/mac/css2.1/20110323/inline-non-replaced-height-002-expected.txt: Added. 616 * platform/mac/css2.1/20110323/inline-non-replaced-height-003-expected.png: Added. 617 * platform/mac/css2.1/20110323/inline-non-replaced-height-003-expected.txt: Added. 618 * platform/mac/css2.1/20110323/inline-non-replaced-width-001-expected.png: Added. 619 * platform/mac/css2.1/20110323/inline-non-replaced-width-001-expected.txt: Added. 620 * platform/mac/css2.1/20110323/inline-non-replaced-width-002-expected.png: Added. 621 * platform/mac/css2.1/20110323/inline-non-replaced-width-002-expected.txt: Added. 622 * platform/mac/css2.1/20110323/inline-replaced-height-001-expected.png: Added. 623 * platform/mac/css2.1/20110323/inline-replaced-height-001-expected.txt: Added. 624 * platform/mac/css2.1/20110323/inline-replaced-height-002-expected.png: Added. 625 * platform/mac/css2.1/20110323/inline-replaced-height-002-expected.txt: Added. 626 * platform/mac/css2.1/20110323/inline-replaced-height-003-expected.png: Added. 627 * platform/mac/css2.1/20110323/inline-replaced-height-003-expected.txt: Added. 628 * platform/mac/css2.1/20110323/inline-replaced-height-004-expected.png: Added. 629 * platform/mac/css2.1/20110323/inline-replaced-height-004-expected.txt: Added. 630 * platform/mac/css2.1/20110323/inline-replaced-height-005-expected.png: Added. 631 * platform/mac/css2.1/20110323/inline-replaced-height-005-expected.txt: Added. 632 * platform/mac/css2.1/20110323/inline-replaced-height-007-expected.png: Added. 633 * platform/mac/css2.1/20110323/inline-replaced-height-007-expected.txt: Added. 634 * platform/mac/css2.1/20110323/inline-replaced-width-001-expected.png: Added. 635 * platform/mac/css2.1/20110323/inline-replaced-width-001-expected.txt: Added. 636 * platform/mac/css2.1/20110323/inline-replaced-width-006-expected.png: Added. 637 * platform/mac/css2.1/20110323/inline-replaced-width-006-expected.txt: Added. 638 * platform/mac/css2.1/20110323/inline-replaced-width-011-expected.png: Added. 639 * platform/mac/css2.1/20110323/inline-replaced-width-011-expected.txt: Added. 640 * platform/mac/css2.1/20110323/inline-replaced-width-012-expected.png: Added. 641 * platform/mac/css2.1/20110323/inline-replaced-width-012-expected.txt: Added. 642 * platform/mac/css2.1/20110323/inline-replaced-width-013-expected.png: Added. 643 * platform/mac/css2.1/20110323/inline-replaced-width-013-expected.txt: Added. 644 * platform/mac/css2.1/20110323/inline-replaced-width-014-expected.png: Added. 645 * platform/mac/css2.1/20110323/inline-replaced-width-014-expected.txt: Added. 646 * platform/mac/css2.1/20110323/inline-replaced-width-015-expected.png: Added. 647 * platform/mac/css2.1/20110323/inline-replaced-width-015-expected.txt: Added. 648 * platform/mac/css2.1/20110323/replaced-elements-001-expected.png: Added. 649 * platform/mac/css2.1/20110323/replaced-elements-001-expected.txt: Added. 650 * platform/mac/css2.1/20110323/replaced-intrinsic-001-expected.png: Added. 651 * platform/mac/css2.1/20110323/replaced-intrinsic-001-expected.txt: Added. 652 * platform/mac/css2.1/20110323/replaced-intrinsic-002-expected.png: Added. 653 * platform/mac/css2.1/20110323/replaced-intrinsic-002-expected.txt: Added. 654 * platform/mac/css2.1/20110323/replaced-intrinsic-003-expected.png: Added. 655 * platform/mac/css2.1/20110323/replaced-intrinsic-003-expected.txt: Added. 656 * platform/mac/css2.1/20110323/replaced-intrinsic-004-expected.png: Added. 657 * platform/mac/css2.1/20110323/replaced-intrinsic-004-expected.txt: Added. 658 * platform/mac/css2.1/20110323/replaced-intrinsic-005-expected.png: Added. 659 * platform/mac/css2.1/20110323/replaced-intrinsic-005-expected.txt: Added. 660 * platform/mac/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png: Added. 661 * platform/mac/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt: Added. 662 * platform/mac/css2.1/20110323/replaced-min-max-001-expected.png: Added. 663 * platform/mac/css2.1/20110323/replaced-min-max-001-expected.txt: Added. 664 * platform/mac/css2.1/20110323/width-non-replaced-inline-001-expected.png: Added. 665 * platform/mac/css2.1/20110323/width-non-replaced-inline-001-expected.txt: Added. 666 * platform/mac/css2.1/20110323/width-replaced-element-001-expected.png: Added. 667 * platform/mac/css2.1/20110323/width-replaced-element-001-expected.txt: Added. 668 * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png: Added. 669 * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt: Added. 670 * platform/mac/svg/hixie/text/003-expected.png: Slight width difference, but a progression, exactly like FF now. 671 * platform/mac/svg/hixie/text/003-expected.txt: Ditto. 672 * platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Added. 673 * platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added. 674 * svg/zoom/page/resources/intrinsic-ratio.svg: Added. 675 * svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm: Added. 676 1 677 2011-06-15 Kent Tamura <tkent@chromium.org> 2 678 -
trunk/LayoutTests/platform/mac/svg/hixie/text/003-expected.txt
r87526 r88913 1 1 layer at (0,0) size 800x600 2 2 RenderView at (0,0) size 800x600 3 layer at (0,0) size 800x41 64 RenderBlock {HTML} at (0,0) size 800x41 65 RenderBody {BODY} at (8,16) size 784x38 43 layer at (0,0) size 800x414 4 RenderBlock {HTML} at (0,0) size 800x414 5 RenderBody {BODY} at (8,16) size 784x382 6 6 RenderBlock {P} at (0,0) size 784x18 7 7 RenderText {#text} at (0,0) size 608x18 8 8 text run at (0,0) width 608: "The following two blocks should look identical (to the pixel), and they should both say \"PASS\":" 9 RenderBlock {P} at (0,34) size 784x16 710 RenderEmbeddedObject {OBJECT} at (0,0) size 7 90x163[border: (3px inset #000080)]11 layer at (0,0) size 7 84x15712 RenderView at (0,0) size 7 84x15713 layer at (0,0) size 7 84x15714 RenderSVGRoot {svg} at (0,0) size 4 71x1579 RenderBlock {P} at (0,34) size 784x166 10 RenderEmbeddedObject {OBJECT} at (0,0) size 784x162 [border: (3px inset #000080)] 11 layer at (0,0) size 778x156 12 RenderView at (0,0) size 778x156 13 layer at (0,0) size 778x156 14 RenderSVGRoot {svg} at (0,0) size 467x156 15 15 RenderSVGText {text} at (0,-1) size 3x3 contains 1 chunk(s) 16 16 RenderSVGInlineText {#text} at (0,0) size 3x3 17 chunk 1 text run 1 at (0.00,0.80) startOffset 0 endOffset 4 width 2. 39: "PASS"18 RenderBlock {P} at (0,21 7) size 784x16719 RenderEmbeddedObject {OBJECT} at (0,0) size 7 90x163[border: (3px inset #000080)]20 layer at (0,0) size 7 84x15721 RenderView at (0,0) size 7 84x15722 layer at (0,0) size 7 84x15723 RenderSVGRoot {svg} at (0,0) size 375x15 724 RenderSVGText {text} at (0,-10 5) size 2386x1156contains 1 chunk(s)25 RenderSVGInlineText {#text} at (0,0) size 2 386x115626 chunk 1 text run 1 at (0.00,800.00) startOffset 0 endOffset 4 width 2 385.20: "PASS"17 chunk 1 text run 1 at (0.00,0.80) startOffset 0 endOffset 4 width 2.40: "PASS" 18 RenderBlock {P} at (0,216) size 784x166 19 RenderEmbeddedObject {OBJECT} at (0,0) size 784x162 [border: (3px inset #000080)] 20 layer at (0,0) size 778x156 21 RenderView at (0,0) size 778x156 22 layer at (0,0) size 778x156 23 RenderSVGRoot {svg} at (0,0) size 375x156 24 RenderSVGText {text} at (0,-100) size 2404x1151 contains 1 chunk(s) 25 RenderSVGInlineText {#text} at (0,0) size 2404x1151 26 chunk 1 text run 1 at (0.00,800.00) startOffset 0 endOffset 4 width 2403.60: "PASS" -
trunk/Source/WebCore/ChangeLog
r88908 r88913 1 2011-06-15 Nikolas Zimmermann <nzimmermann@rim.com> 2 3 Reviewed by David Hyatt. 4 5 CSS 2.1: Support replaced elements with relative intrinsic sizes 6 https://bugs.webkit.org/show_bug.cgi?id=15849 7 8 CSS 2.1 failure: html4/replaced-intrinsic-ratio-001 9 https://bugs.webkit.org/show_bug.cgi?id=53099 10 11 Generalize the recently added SVG specific host <-> embedded document size-negotiation used 12 to support embedding SVGs with intrinsic ratio/size via <iframe>/<object>/<embed> from 13 RenderPart right into RenderReplaced. It will be used to share the size-negotiation logic 14 with RenderImage, which still has its own way to negotiate with the embedded SVG to figure 15 out its size (and it's broken in several ways). 16 17 This fully implements intrinsic size/ratio support for replaced elements, as specified in: 18 http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width 19 http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height 20 21 RenderImage has not yet been converted to use the new size negotiation logic, this is just 22 the ground work. As soon as this is done all ways of embedding SVG is unified in a single 23 way: the same size negotiation logic used for object/embed/iframe/img for SVG documents. 24 25 To use it for non-SVG target documents, it's just a matter of implementing 26 "RenderBox* embeddedContentBox()" which needs to return the root renderer of the embedded document. 27 For SVG it's the embedded document RenderSVGRoot renderer, associated with the outermost <svg> element. 28 It's easy to implement this for embedded MathML documents or PDF documents now, if needed. 29 30 Imported all CSS 2.1 tests named *replaced* and *intrinsic* tests, except the still failing background-intrinsic-* 31 which embed SVGs through background-image or <img>, which still use the old size-negotiation logic. 32 33 Tests: css2.1/20110323/* (203 tests + support files) 34 svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm (same as replaced-intrinsic-ratio-001.htm, but zooms in a few times, to see whether all boxes react properly) 35 http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm (same as replaced-intrinsic-ratio-001.htm, but with delayed loading of the SVG to test late-size-negotiation) 36 37 This fixes: 38 css2.1/20110323/replaced-intrinsic-ratio-001.htm 39 css2.1/20110323/replaced-intrinsic-003.htm 40 css2.1/20110323/block-replaced-height-007.htm 41 css2.1/20110323/float-replaced-height-007.htm 42 css2.1/20110323/inline-block-replaced-height-007.htm 43 css2.1/20110323/inline-replaced-height-007.htm 44 45 We're now the first to properly handle replaced-intrinsic-ratio-001.htm out of Opera/FF/IE9 :-) 46 This is an important piece of embedding SVGs though, so glad that we finally have it. 47 48 * rendering/RenderBlock.cpp: 49 (WebCore::RenderBlock::layoutBlockChildren): Use new helper needsPreferredWidthsRecalculation() to figure out whether pref widths need to be calculated. 50 (WebCore::RenderBlock::layoutPositionedObjects): Ditto. 51 * rendering/RenderBlockLineLayout.cpp: 52 (WebCore::RenderBlock::layoutInlineChildren): Ditto. 53 * rendering/RenderBox.cpp: 54 (WebCore::RenderBox::needsPreferredWidthsRecalculation): Refactored and extended from RenderBlock*. We have to recalculate pref widths upon layout 55 if we embed a document with an intrinsic ratio/size, extensively covered by 56 svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm 57 * rendering/RenderBox.h: 58 (WebCore::RenderBox::computeIntrinsicRatioInformation): New virtual function, only implemented in RenderPart so far. This generalizes the existing method from RenderPart. 59 * rendering/RenderPart.cpp: 60 (WebCore::RenderPart::needsPreferredWidthsRecalculation): Always recompute pref widths of we have an embeddedContentBox() - it may depend on our size. 61 (WebCore::RenderPart::embeddedContentBox): Return the RenderSVGRoot box of the embedded SVG document, if we're embedded through object/embed/iframe (soon img as well). 62 * rendering/RenderPart.h: 63 * rendering/RenderReplaced.cpp: 64 (WebCore::RenderReplaced::computeIntrinsicLogicalWidth): New helper function, that either returns a fixed intrinsic size (set by a class inheriting from us) or the embedded target document size. 65 (WebCore::RenderReplaced::computeIntrinsicLogicalHeight): Ditto. 66 (WebCore::RenderReplaced::computeReplacedLogicalWidth): Full implementation of: 10.3.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width. 67 (WebCore::RenderReplaced::computeReplacedLogicalHeight): Full implementation of: 10.6.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height 68 * rendering/RenderReplaced.h: 69 (WebCore::RenderReplaced::embeddedContentBox): 70 * rendering/svg/RenderSVGRoot.cpp: 71 (WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Fix problem when zooming replaced-intrinsic-ratio-001.htm: if ownerWidth is auto, don't apply style()->effectiveZoom() twice. 72 (WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto for ownerHeight auto. 73 * rendering/svg/RenderSVGRoot.h: Mark 'computeIntrinsicRatioInformation' virtual. 74 1 75 2011-06-09 MORITA Hajime <morrita@google.com> 2 76 -
trunk/Source/WebCore/rendering/RenderBlock.cpp
r88854 r88913 1903 1903 child->setChildNeedsLayout(true, false); 1904 1904 1905 // If relayoutChildren is set and the child has percentage padding , we also need to invalidate the child's pref widths.1906 if (relayoutChildren && (child->style()->paddingStart().isPercent() || child->style()->paddingEnd().isPercent()))1905 // If relayoutChildren is set and the child has percentage padding or an embedded content box, we also need to invalidate the childs pref widths. 1906 if (relayoutChildren && child->needsPreferredWidthsRecalculation()) 1907 1907 child->setPreferredLogicalWidthsDirty(true, false); 1908 1908 … … 2175 2175 r->setChildNeedsLayout(true, false); 2176 2176 2177 // If relayoutChildren is set and we have percentage padding, we also need to invalidate the child's pref widths.2178 if (relayoutChildren && (r->style()->paddingStart().isPercent() || r->style()->paddingEnd().isPercent()))2177 // If relayoutChildren is set and the child has percentage padding or an embedded content box, we also need to invalidate the childs pref widths. 2178 if (relayoutChildren && r->needsPreferredWidthsRecalculation()) 2179 2179 r->setPreferredLogicalWidthsDirty(true, false); 2180 2180 -
trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp
r88883 r88913 1162 1162 o->setChildNeedsLayout(true, false); 1163 1163 1164 // If relayoutChildren is set and we have percentage padding, we also need to invalidate the child's pref widths.1165 if (relayoutChildren && (o->style()->paddingStart().isPercent() || o->style()->paddingEnd().isPercent()))1164 // If relayoutChildren is set and the child has percentage padding or an embedded content box, we also need to invalidate the childs pref widths. 1165 if (relayoutChildren && box->needsPreferredWidthsRecalculation()) 1166 1166 o->setPreferredLogicalWidthsDirty(true, false); 1167 1167 -
trunk/Source/WebCore/rendering/RenderBox.cpp
r88319 r88913 45 45 #include "RenderInline.h" 46 46 #include "RenderLayer.h" 47 #include "RenderPart.h" 47 48 #include "RenderTableCell.h" 48 49 #include "RenderTheme.h" … … 660 661 if (layer()) 661 662 layer()->panScrollFromPoint(source); 663 } 664 665 bool RenderBox::needsPreferredWidthsRecalculation() const 666 { 667 return style()->paddingStart().isPercent() || style()->paddingEnd().isPercent(); 662 668 } 663 669 -
trunk/Source/WebCore/rendering/RenderBox.h
r88319 r88913 410 410 RenderOverflow* hasRenderOverflow() const { return m_overflow.get(); } 411 411 412 virtual bool needsPreferredWidthsRecalculation() const; 413 virtual void computeIntrinsicRatioInformation(FloatSize& /* intrinsicRatio */, bool& /* isPercentageIntrinsicSize */) const { } 414 412 415 protected: 413 416 virtual void styleWillChange(StyleDifference, const RenderStyle* newStyle); -
trunk/Source/WebCore/rendering/RenderPart.cpp
r88009 r88913 95 95 #endif 96 96 97 #if ENABLE(SVG) 98 RenderSVGRoot* RenderPart::embeddedSVGContentRenderer() const 97 bool RenderPart::needsPreferredWidthsRecalculation() const 98 { 99 if (RenderWidget::needsPreferredWidthsRecalculation()) 100 return true; 101 return embeddedContentBox(); 102 } 103 104 RenderBox* RenderPart::embeddedContentBox() const 99 105 { 100 106 if (!node() || !widget() || !widget()->isFrameView()) … … 102 108 103 109 FrameView* view = static_cast<FrameView*>(widget()); 104 Render Object* contentRenderer = view->frame() ? view->frame()->contentRenderer() : 0;110 RenderView* contentRenderer = view->frame() ? view->frame()->contentRenderer() : 0; 105 111 if (!contentRenderer) 106 112 return 0; 107 113 108 RenderObject* svgRootRenderer= contentRenderer->firstChild();109 if (! svgRootRenderer || !svgRootRenderer->isSVGRoot())114 RenderObject* rootChild = contentRenderer->firstChild(); 115 if (!rootChild || !rootChild->isBox()) 110 116 return 0; 111 117 112 return toRenderSVGRoot(svgRootRenderer); 118 #if ENABLE(SVG) 119 // Curently only embedded SVG documents participate in the size-negotiation logic. 120 if (rootChild->isSVGRoot()) 121 return toRenderBox(rootChild); 122 #endif 123 124 return 0; 113 125 } 114 126 115 int RenderPart::computeEmbeddedDocumentReplacedWidth(RenderSVGRoot* contentRenderer, bool includeMaxWidth) const116 {117 ASSERT(contentRenderer);118 ASSERT(contentRenderer->style());119 return contentRenderer->computeReplacedLogicalWidthRespectingMinMaxWidth(contentRenderer->computeReplacedLogicalWidthUsing(contentRenderer->style()->logicalWidth()), includeMaxWidth);120 127 } 121 122 int RenderPart::computeEmbeddedDocumentReplacedHeight(RenderSVGRoot* contentRenderer) const123 {124 ASSERT(contentRenderer);125 ASSERT(contentRenderer->style());126 return contentRenderer->computeReplacedLogicalHeightRespectingMinMaxHeight(contentRenderer->computeReplacedLogicalHeightUsing(contentRenderer->style()->logicalHeight()));127 }128 129 int RenderPart::computeReplacedLogicalWidth(bool includeMaxWidth) const130 {131 RenderSVGRoot* contentRenderer = embeddedSVGContentRenderer();132 RenderStyle* contentRenderStyle = contentRenderer ? contentRenderer->style() : 0;133 134 if (!contentRenderer || !contentRenderStyle || style()->width().isSpecified())135 return RenderWidget::computeReplacedLogicalWidth(includeMaxWidth);136 137 // 10.3.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width138 bool isPercentageIntrinsicSize = false;139 FloatSize intrinsicRatio;140 contentRenderer->computeIntrinsicRatioInformation(intrinsicRatio, isPercentageIntrinsicSize);141 142 if (style()->width().isAuto()) {143 bool heightIsAuto = style()->height().isAuto();144 bool hasIntrinsicWidth = contentRenderStyle->width().isFixed();145 146 // If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic width, then that intrinsic width is the used value of 'width'.147 if (heightIsAuto && hasIntrinsicWidth)148 return computeEmbeddedDocumentReplacedWidth(contentRenderer, includeMaxWidth);149 150 bool hasIntrinsicHeight = contentRenderStyle->height().isFixed();151 if (!intrinsicRatio.isEmpty()) {152 // If 'height' and 'width' both have computed values of 'auto' and the element has no intrinsic width, but does have an intrinsic height and intrinsic ratio;153 // or if 'width' has a computed value of 'auto', 'height' has some other computed value, and the element does have an intrinsic ratio; then the used value154 // of 'width' is: (used height) * (intrinsic ratio)155 if ((heightIsAuto && !hasIntrinsicWidth && hasIntrinsicHeight) || !heightIsAuto) {156 int logicalHeight = computeReplacedLogicalHeightUsing(heightIsAuto ? contentRenderStyle->logicalHeight() : style()->logicalHeight());157 return static_cast<int>(ceilf(logicalHeight * intrinsicRatio.width() / intrinsicRatio.height()));158 }159 160 // If 'height' and 'width' both have computed values of 'auto' and the element has an intrinsic ratio but no intrinsic height or width, then the used value of161 // 'width' is undefined in CSS 2.1. However, it is suggested that, if the containing block's width does not itself depend on the replaced element's width, then162 // the used value of 'width' is calculated from the constraint equation used for block-level, non-replaced elements in normal flow.163 // FIXME: Don't ignore padding/margin/border here.164 RenderBlock* containingBlock = this->containingBlock();165 if (heightIsAuto && !hasIntrinsicWidth && !hasIntrinsicHeight && containingBlock) {166 if (isPercentageIntrinsicSize)167 return static_cast<int>(ceilf(containingBlock->width() * intrinsicRatio.width() / 100));168 return containingBlock->width();169 }170 }171 172 // Otherwise, if 'width' has a computed value of 'auto', and the element has an intrinsic width, then that intrinsic width is the used value of 'width'.173 if (hasIntrinsicWidth)174 return computeEmbeddedDocumentReplacedWidth(contentRenderer, includeMaxWidth);175 }176 177 // Otherwise, if 'width' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'width' becomes 300px. If 300px is too178 // wide to fit the device, UAs should use the width of the largest rectangle that has a 2:1 ratio and fits the device instead.179 return intrinsicLogicalWidth();180 }181 182 int RenderPart::computeReplacedLogicalHeight() const183 {184 RenderSVGRoot* contentRenderer = embeddedSVGContentRenderer();185 RenderStyle* contentRenderStyle = contentRenderer ? contentRenderer->style() : 0;186 187 if (!contentRenderer || !contentRenderStyle || style()->height().isSpecified())188 return RenderWidget::computeReplacedLogicalHeight();189 190 // 10.6.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height191 bool isPercentageIntrinsicSize = false;192 FloatSize intrinsicRatio;193 contentRenderer->computeIntrinsicRatioInformation(intrinsicRatio, isPercentageIntrinsicSize);194 195 if (style()->height().isAuto()) {196 bool widthIsAuto = style()->width().isAuto();197 bool hasIntrinsicHeight = contentRenderStyle->height().isFixed();198 199 // If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic height, then that intrinsic height is the used value of 'height'.200 if (widthIsAuto && hasIntrinsicHeight)201 return computeEmbeddedDocumentReplacedHeight(contentRenderer);202 203 // Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic ratio then the used value of 'height' is:204 // (used width) / (intrinsic ratio)205 if (!intrinsicRatio.isEmpty() && !isPercentageIntrinsicSize) {206 int logicalWidth = computeReplacedLogicalWidthUsing(widthIsAuto ? contentRenderStyle->logicalWidth() : style()->logicalWidth());207 return static_cast<int>(ceilf(logicalWidth * intrinsicRatio.height() / intrinsicRatio.width()));208 }209 210 // Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic height, then that intrinsic height is the used value of 'height'.211 if (hasIntrinsicHeight)212 return computeEmbeddedDocumentReplacedHeight(contentRenderer);213 }214 215 // Otherwise, if 'height' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'height' must be set to the height216 // of the largest rectangle that has a 2:1 ratio, has a height not greater than 150px, and has a width not greater than the device width.217 return intrinsicLogicalHeight();218 }219 220 void RenderPart::layout()221 {222 ASSERT(needsLayout());223 224 if ((style()->width().isAuto() || style()->height().isAuto()) && embeddedSVGContentRenderer())225 setPreferredLogicalWidthsDirty(true);226 227 RenderWidget::layout();228 }229 #endif230 231 } -
trunk/Source/WebCore/rendering/RenderPart.h
r87801 r88913 28 28 namespace WebCore { 29 29 30 class RenderSVGRoot;31 32 30 // Renderer for frames via RenderFrameBase, and plug-ins via RenderEmbeddedObject. 33 31 class RenderPart : public RenderWidget { … … 43 41 #endif 44 42 43 virtual bool needsPreferredWidthsRecalculation() const; 44 virtual RenderBox* embeddedContentBox() const; 45 45 46 protected: 46 47 #if USE(ACCELERATED_COMPOSITING) 47 48 virtual bool requiresLayer() const; 48 #endif49 50 #if ENABLE(SVG)51 RenderSVGRoot* embeddedSVGContentRenderer() const;52 int computeEmbeddedDocumentReplacedWidth(RenderSVGRoot* contentRenderer, bool includeMaxWidth) const;53 int computeEmbeddedDocumentReplacedHeight(RenderSVGRoot* contentRenderer) const;54 virtual int computeReplacedLogicalWidth(bool includeMaxWidth = true) const;55 virtual int computeReplacedLogicalHeight() const;56 virtual void layout();57 49 #endif 58 50 -
trunk/Source/WebCore/rendering/RenderReplaced.cpp
r88250 r88913 190 190 } 191 191 192 int RenderReplaced::computeIntrinsicLogicalWidth(RenderBox* contentRenderer, bool includeMaxWidth) const 193 { 194 if (m_hasIntrinsicSize) { 195 ASSERT(!contentRenderer); 196 return computeReplacedLogicalWidthRespectingMinMaxWidth(calcAspectRatioLogicalWidth(), includeMaxWidth); 197 } 198 ASSERT(contentRenderer); 199 ASSERT(contentRenderer->style()); 200 return contentRenderer->computeReplacedLogicalWidthRespectingMinMaxWidth(contentRenderer->computeReplacedLogicalWidthUsing(contentRenderer->style()->logicalWidth()), includeMaxWidth); 201 } 202 203 int RenderReplaced::computeIntrinsicLogicalHeight(RenderBox* contentRenderer) const 204 { 205 if (m_hasIntrinsicSize) { 206 ASSERT(!contentRenderer); 207 return computeReplacedLogicalHeightRespectingMinMaxHeight(calcAspectRatioLogicalHeight()); 208 } 209 ASSERT(contentRenderer); 210 ASSERT(contentRenderer->style()); 211 return contentRenderer->computeReplacedLogicalHeightRespectingMinMaxHeight(contentRenderer->computeReplacedLogicalHeightUsing(contentRenderer->style()->logicalHeight())); 212 } 213 192 214 int RenderReplaced::computeReplacedLogicalWidth(bool includeMaxWidth) const 193 215 { 194 int logicalWidth; 195 // FIXME: Shouldn't this use style()->logicalWidth(), similar to what computeReplacedLogicalHeight() does? 196 if (style()->width().isSpecified()) 197 logicalWidth = computeReplacedLogicalWidthUsing(style()->logicalWidth()); 198 else if (m_hasIntrinsicSize) 199 logicalWidth = calcAspectRatioLogicalWidth(); 200 else 201 logicalWidth = intrinsicLogicalWidth(); 202 203 return computeReplacedLogicalWidthRespectingMinMaxWidth(logicalWidth, includeMaxWidth); 216 if (style()->logicalWidth().isSpecified()) 217 return computeReplacedLogicalWidthRespectingMinMaxWidth(computeReplacedLogicalWidthUsing(style()->logicalWidth()), includeMaxWidth); 218 219 RenderBox* contentRenderer = embeddedContentBox(); 220 RenderStyle* contentRenderStyle = 0; 221 222 // 10.3.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width 223 bool isPercentageIntrinsicSize = false; 224 FloatSize intrinsicRatio; 225 if (contentRenderer) { 226 contentRenderer->computeIntrinsicRatioInformation(intrinsicRatio, isPercentageIntrinsicSize); 227 contentRenderStyle = contentRenderer->style(); 228 ASSERT(contentRenderStyle); 229 } 230 231 if (style()->logicalWidth().isAuto()) { 232 bool heightIsAuto = style()->logicalHeight().isAuto(); 233 bool hasIntrinsicWidth = m_hasIntrinsicSize || (contentRenderer && contentRenderStyle->logicalWidth().isFixed()); 234 235 // If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic width, then that intrinsic width is the used value of 'width'. 236 if (heightIsAuto && hasIntrinsicWidth) 237 return computeIntrinsicLogicalWidth(contentRenderer, includeMaxWidth); 238 239 bool hasIntrinsicHeight = m_hasIntrinsicSize || (contentRenderer && contentRenderStyle->logicalHeight().isFixed()); 240 if (!intrinsicRatio.isEmpty()) { 241 // If 'height' and 'width' both have computed values of 'auto' and the element has no intrinsic width, but does have an intrinsic height and intrinsic ratio; 242 // or if 'width' has a computed value of 'auto', 'height' has some other computed value, and the element does have an intrinsic ratio; then the used value 243 // of 'width' is: (used height) * (intrinsic ratio) 244 if ((heightIsAuto && !hasIntrinsicWidth && hasIntrinsicHeight) || !heightIsAuto) { 245 if (heightIsAuto) { 246 if (contentRenderer) { 247 int logicalHeight = contentRenderer->computeReplacedLogicalHeightUsing(contentRenderStyle->logicalHeight()); 248 return contentRenderer->computeReplacedLogicalWidthRespectingMinMaxWidth(static_cast<int>(ceilf(logicalHeight * intrinsicRatio.width() / intrinsicRatio.height()))); 249 } 250 } else { 251 int logicalHeight = computeReplacedLogicalHeightUsing(style()->logicalHeight()); 252 return computeReplacedLogicalWidthRespectingMinMaxWidth(static_cast<int>(ceilf(logicalHeight * intrinsicRatio.width() / intrinsicRatio.height()))); 253 } 254 } 255 256 // If 'height' and 'width' both have computed values of 'auto' and the element has an intrinsic ratio but no intrinsic height or width, then the used value of 257 // 'width' is undefined in CSS 2.1. However, it is suggested that, if the containing block's width does not itself depend on the replaced element's width, then 258 // the used value of 'width' is calculated from the constraint equation used for block-level, non-replaced elements in normal flow. 259 RenderBlock* containingBlock = this->containingBlock(); 260 if (heightIsAuto && !hasIntrinsicWidth && !hasIntrinsicHeight && contentRenderer && containingBlock) { 261 // The aforementioned 'constraint equation' used for block-level, non-replaced elements in normal flow: 262 // 'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' = width of containing block 263 264 // We have to lookup the containing block, which has an explicit width, which must not be equal to our direct containing block. 265 // If the embedded document appears _after_ we performed the initial layout, our intrinsic size is 300x150. If our containing 266 // block doesn't provide an explicit width, it's set to the 300 default, coming from the initial layout run. 267 bool foundExplicitWidth = false; 268 for (; !containingBlock->isRenderView() && !containingBlock->isBody(); containingBlock = containingBlock->containingBlock()) { 269 if (containingBlock->style()->logicalWidth().isSpecified()) { 270 foundExplicitWidth = true; 271 break; 272 } 273 } 274 275 // This solves above equation for 'width' (== logicalWidth). 276 int logicalWidth = foundExplicitWidth ? computeIntrinsicLogicalWidth(containingBlock, false) : containingBlock->availableLogicalWidth(); 277 int marginStart = style()->marginStart().calcMinValue(logicalWidth); 278 int marginEnd = style()->marginEnd().calcMinValue(logicalWidth); 279 logicalWidth = max(0, logicalWidth - (marginStart + marginEnd + (width() - clientWidth()))); 280 if (isPercentageIntrinsicSize) 281 logicalWidth = static_cast<int>(ceilf(logicalWidth * intrinsicRatio.width() / 100)); 282 return computeReplacedLogicalWidthRespectingMinMaxWidth(logicalWidth); 283 } 284 } 285 286 // Otherwise, if 'width' has a computed value of 'auto', and the element has an intrinsic width, then that intrinsic width is the used value of 'width'. 287 if (hasIntrinsicWidth) 288 return computeIntrinsicLogicalWidth(contentRenderer, includeMaxWidth); 289 } 290 291 // Otherwise, if 'width' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'width' becomes 300px. If 300px is too 292 // wide to fit the device, UAs should use the width of the largest rectangle that has a 2:1 ratio and fits the device instead. 293 return computeReplacedLogicalWidthRespectingMinMaxWidth(intrinsicLogicalWidth(), includeMaxWidth); 204 294 } 205 295 206 296 int RenderReplaced::computeReplacedLogicalHeight() const 207 297 { 208 int logicalHeight; 209 if (style()->logicalHeight().isSpecified()) 210 logicalHeight = computeReplacedLogicalHeightUsing(style()->logicalHeight()); 211 else if (m_hasIntrinsicSize) 212 logicalHeight = calcAspectRatioLogicalHeight(); 213 else 214 logicalHeight = intrinsicLogicalHeight(); 215 216 return computeReplacedLogicalHeightRespectingMinMaxHeight(logicalHeight); 298 // 10.5 Content height: the 'height' property: http://www.w3.org/TR/CSS21/visudet.html#propdef-height 299 // If the height of the containing block is not specified explicitly (i.e., it depends on 300 // content height), and this element is not absolutely positioned, the value computes to 'auto'. 301 bool heightIsAuto = style()->logicalHeight().isAuto(); 302 if (!document()->inQuirksMode() && !isPositioned() && style()->logicalHeight().isPercent()) { 303 if (RenderObject* containingBlock = this->containingBlock()) { 304 while (containingBlock->isAnonymous()) 305 containingBlock = containingBlock->containingBlock(); 306 heightIsAuto = !containingBlock->style()->logicalHeight().isSpecified(); 307 } 308 } 309 310 if (style()->logicalHeight().isSpecified() && !heightIsAuto) 311 return computeReplacedLogicalHeightRespectingMinMaxHeight(computeReplacedLogicalHeightUsing(style()->logicalHeight())); 312 313 RenderBox* contentRenderer = embeddedContentBox(); 314 RenderStyle* contentRenderStyle = 0; 315 316 // 10.6.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height 317 bool isPercentageIntrinsicSize = false; 318 FloatSize intrinsicRatio; 319 if (contentRenderer) { 320 contentRenderer->computeIntrinsicRatioInformation(intrinsicRatio, isPercentageIntrinsicSize); 321 contentRenderStyle = contentRenderer->style(); 322 ASSERT(contentRenderStyle); 323 } 324 325 if (heightIsAuto) { 326 bool widthIsAuto = style()->logicalWidth().isAuto(); 327 bool hasIntrinsicHeight = m_hasIntrinsicSize || (contentRenderer && contentRenderStyle->logicalHeight().isFixed()); 328 329 // If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic height, then that intrinsic height is the used value of 'height'. 330 if (widthIsAuto && hasIntrinsicHeight) 331 return computeIntrinsicLogicalHeight(contentRenderer); 332 333 // Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic ratio then the used value of 'height' is: 334 // (used width) / (intrinsic ratio) 335 if (!intrinsicRatio.isEmpty() && !isPercentageIntrinsicSize) 336 return computeReplacedLogicalHeightRespectingMinMaxHeight(static_cast<int>(ceilf(availableLogicalWidth() * intrinsicRatio.height() / intrinsicRatio.width()))); 337 338 // Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic height, then that intrinsic height is the used value of 'height'. 339 if (hasIntrinsicHeight) 340 return computeIntrinsicLogicalHeight(contentRenderer); 341 } 342 343 // Otherwise, if 'height' has a computed value of 'auto', but none of the conditions above are met, then the used value of 'height' must be set to the height 344 // of the largest rectangle that has a 2:1 ratio, has a height not greater than 150px, and has a width not greater than the device width. 345 return computeReplacedLogicalHeightRespectingMinMaxHeight(intrinsicLogicalHeight()); 217 346 } 218 347 -
trunk/Source/WebCore/rendering/RenderReplaced.h
r88250 r88913 33 33 virtual ~RenderReplaced(); 34 34 35 virtual int computeReplacedLogicalWidth(bool includeMaxWidth = true) const; 36 virtual int computeReplacedLogicalHeight() const; 37 35 38 protected: 36 39 virtual void layout(); … … 38 41 virtual IntSize intrinsicSize() const; 39 42 40 virtual int computeReplacedLogicalWidth(bool includeMaxWidth = true) const;41 virtual int computeReplacedLogicalHeight() const;42 43 virtual int minimumReplacedHeight() const { return 0; } 43 44 … … 57 58 58 59 private: 60 virtual RenderBox* embeddedContentBox() const { return 0; } 61 int computeIntrinsicLogicalWidth(RenderBox* contentRenderer, bool includeMaxWidth) const; 62 int computeIntrinsicLogicalHeight(RenderBox* contentRenderer) const; 63 59 64 virtual const char* renderName() const { return "RenderReplaced"; } 60 65 -
trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp
r88319 r88913 167 167 Length ownerWidth = ownerRendererStyle->width(); 168 168 if (ownerWidth.isAuto()) 169 return computeIntrinsicWidth(replacedWidth);169 return replacedWidth; 170 170 171 171 // Spec: http://dev.w3.org/SVG/profiles/1.1F2/publish/coords.html#ViewportSpace … … 209 209 Length ownerHeight = ownerRendererStyle->height(); 210 210 if (ownerHeight.isAuto()) 211 return computeIntrinsicHeight(replacedHeight);211 return replacedHeight; 212 212 213 213 // Spec: http://dev.w3.org/SVG/profiles/1.1F2/publish/coords.html#ViewportSpace -
trunk/Source/WebCore/rendering/svg/RenderSVGRoot.h
r88319 r88913 40 40 virtual ~RenderSVGRoot(); 41 41 42 v oid computeIntrinsicRatioInformation(FloatSize& intrinsicRatio, bool& isPercentageIntrinsicSize) const;42 virtual void computeIntrinsicRatioInformation(FloatSize& intrinsicRatio, bool& isPercentageIntrinsicSize) const; 43 43 const RenderObjectChildList* children() const { return &m_children; } 44 44 RenderObjectChildList* children() { return &m_children; } -
trunk/Tools/ChangeLog
r88912 r88913 1 2011-06-15 Nikolas Zimmermann <nzimmermann@rim.com> 2 3 Reviewed by David Hyatt. 4 5 CSS 2.1: Support replaced elements with relative intrinsic sizes 6 https://bugs.webkit.org/show_bug.cgi?id=15849 7 8 CSS 2.1 failure: html4/replaced-intrinsic-ratio-001 9 https://bugs.webkit.org/show_bug.cgi?id=53099 10 11 Recognize *.htm tests in the old & new DRT implementation, needed for the vanilla css2.1 html4 tests. 12 13 * Scripts/old-run-webkit-tests: 14 * Scripts/webkitpy/layout_tests/port/test_files.py: 15 1 16 2011-06-15 Carlos Garcia Campos <cgarcia@igalia.com> 2 17 -
trunk/Tools/Scripts/old-run-webkit-tests
r88013 r88913 504 504 my %ignoredDirectories = map { $_ => 1 } qw(platform); 505 505 my %ignoredLocalDirectories = map { $_ => 1 } qw(.svn _svn resources script-tests); 506 my %supportedFileExtensions = map { $_ => 1 } qw(htm l shtml xml xhtml xhtmlmp pl php mht);506 my %supportedFileExtensions = map { $_ => 1 } qw(htm html shtml xml xhtml xhtmlmp pl php mht); 507 507 508 508 if (!checkWebCoreFeatureSupport("MathML", 0)) { -
trunk/Tools/Scripts/webkitpy/layout_tests/port/test_files.py
r87189 r88913 45 45 # When collecting test cases, we include any file with these extensions. 46 46 _supported_file_extensions = set(['.html', '.shtml', '.xml', '.xhtml', '.xhtmlmp', '.pl', 47 '. php', '.svg', '.mht'])47 '.htm', '.php', '.svg', '.mht']) 48 48 # When collecting test cases, skip these directories 49 49 _skipped_directories = set(['.svn', '_svn', 'resources', 'script-tests'])
Note: See TracChangeset
for help on using the changeset viewer.