| OLD | NEW |
| 1 <!DOCTYPE HTML> | 1 <!DOCTYPE HTML> |
| 2 <!-- |
| 3 This test creates a scenario where we attempt to squash into a layer that |
| 4 paints into its composited ancestor. This should not crash. |
| 5 |
| 6 It also happens that we shouldn't promote |container| in this case as its |
| 7 composited descendants are invisible, but that's a separate bug. See, |
| 8 crbug.com/403894. |
| 9 --> |
| 2 <style> | 10 <style> |
| 3 body { | 11 body { |
| 4 -webkit-transform: translateZ(0); | 12 -webkit-transform: translateZ(0); |
| 5 } | 13 } |
| 6 #overlapper { | 14 #overlapper { |
| 7 width: 400px; | 15 width: 400px; |
| 8 height: 400px; | 16 height: 400px; |
| 9 left: 200px; | 17 left: 200px; |
| 10 background: gray; | 18 background: gray; |
| 11 position: absolute; | 19 position: absolute; |
| 12 -webkit-transform: translateZ(0); | 20 -webkit-transform: translateZ(0); |
| 13 } | 21 } |
| 14 | 22 |
| 15 #container { | 23 #container { |
| 16 -webkit-perspective: 1400px; | 24 -webkit-perspective: 1400px; |
| 17 -webkit-transform: translateZ(0); | |
| 18 position: absolute; | 25 position: absolute; |
| 19 width: 180px; | 26 width: 180px; |
| 20 height: 180px; | 27 height: 180px; |
| 21 background: papayawhip; | 28 background: papayawhip; |
| 22 } | 29 } |
| 23 | 30 |
| 24 #composited { | 31 #composited { |
| 25 width: 100px; | 32 width: 100px; |
| 26 height: 100px; | 33 height: 100px; |
| 34 left: 200px; |
| 27 background: green; | 35 background: green; |
| 28 position: absolute; | 36 position: absolute; |
| 29 -webkit-transform: translateZ(10px); | 37 -webkit-transform: translateZ(10px); |
| 38 visibility: hidden; |
| 30 } | 39 } |
| 31 | 40 |
| 32 #squashed { | 41 #squashed { |
| 33 position: absolute; | 42 position: absolute; |
| 34 left: 200px; | |
| 35 width: 50px; | 43 width: 50px; |
| 36 height: 50px; | 44 height: 50px; |
| 37 background: blue; | 45 background: blue; |
| 38 } | 46 } |
| 39 </style> | 47 </style> |
| 40 <div id="overlapper"></div> | 48 <div id="overlapper"></div> |
| 41 <div id="container"> | 49 <div id="container"> |
| 42 <div id="composited"></div> | 50 <div id="composited"></div> |
| 43 </div> | 51 </div> |
| 44 <div id="squashed"></div> | 52 <div id="squashed"></div> |
| 45 | 53 THIS TEST PASSES IF IT DOES NOT CRASH |
| OLD | NEW |