| <!DOCTYPE html> <!-- webkit-test-runner [ useFlexibleViewport=true ] --> |
| |
| <html> |
| <head> |
| <meta name="viewport" content="width=device-width"> |
| <style> |
| .perspective-container { |
| perspective: 1500px; |
| width: 100%; |
| padding: 10px; |
| border: 1px solid black; |
| } |
| |
| .container { |
| transform: translateZ(20px); |
| } |
| |
| .middle { |
| transform-style: preserve-3d; |
| perspective: 300px; |
| } |
| |
| #blurry-layer { |
| width: 100%; |
| height: 50px; |
| -webkit-backface-visibility: hidden; |
| transform: rotateX(20deg); |
| background-color: silver; |
| font-size: 24pt; |
| } |
| </style> |
| <script> |
| if (window.testRunner) { |
| testRunner.dumpAsText(); |
| testRunner.waitUntilDone(); |
| } |
| |
| function getUIScript(layerID) |
| { |
| return ` |
| (function() { |
| uiController.doAfterPresentationUpdate(function() { |
| var layerProperties = JSON.stringify(uiController.propertiesOfLayerWithID(${layerID})); |
| uiController.uiScriptComplete(layerProperties); |
| }) |
| })();` |
| } |
| |
| function doTest() |
| { |
| if (!window.testRunner) |
| return; |
| |
| var layerID = internals.layerIDForElement(document.getElementById('blurry-layer')); |
| |
| testRunner.runUIScript(getUIScript(layerID), function(layerProperties) { |
| var propertiesAsJSON = JSON.parse(layerProperties); |
| document.getElementById('layer-properties').textContent = 'rasterizationScale of layer is ' + propertiesAsJSON['rasterizationScale']; |
| testRunner.notifyDone(); |
| }); |
| } |
| |
| window.addEventListener('load', doTest, false); |
| </script> |
| </head> |
| <body> |
| |
| <div class="perspective-container"> |
| <div class="container"> |
| <div class="middle"> |
| <div id="blurry-layer"> |
| This text should not be blurry |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| <pre id="layer-properties"></pre> |
| </body> |
| </html> |