| <!DOCTYPE html> |
| <html> |
| <head> |
| <style> |
| div#innerBox { |
| width: 200px; |
| height: 200px; |
| padding: 0px; |
| border-top-left-radius: 100px 80px; |
| border-top-right-radius: 50px 25px; |
| border-bottom-left-radius: 50px 70px; |
| border-bottom-right-radius: 70px 30px; |
| background-color: green; |
| } |
| |
| div#outerBox { |
| width: 200px; |
| height: 200px; |
| margin: 0px; |
| padding: 100px; |
| background-color: lightgreen; |
| } |
| </style> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| function log(message) { |
| var console = document.getElementById('console'); |
| console.innerHTML += message + "\n"; |
| } |
| |
| function runTest() { |
| var outerBox = document.getElementById('outerBox'); |
| outerBox.addEventListener('click', function(event) { |
| log("Click outerBox"); |
| }, false); |
| var innerBox = document.getElementById('innerBox'); |
| innerBox.addEventListener('click', function(event) { |
| log("Click innerBox"); |
| event.stopPropagation(); |
| }, false); |
| if (window.testRunner) { |
| var x = innerBox.offsetLeft; |
| var y = innerBox.offsetTop; |
| // top-left |
| eventSender.mouseMoveTo(x, y); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 25, y + 20); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 30, y + 24); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| // top-right |
| eventSender.mouseMoveTo(x + 200, y); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 200 - 14, y + 8); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 200 - 8, y + 4); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 200 - 4, y + 2); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| // bottom-left |
| eventSender.mouseMoveTo(x, y + 180); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 14, y + 166); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 20, y + 160); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| // bottom-right |
| eventSender.mouseMoveTo(x + 199, y + 200); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 199, y + 180); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 199, y + 175); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| eventSender.mouseMoveTo(x + 199, y + 170); |
| eventSender.mouseDown(); |
| eventSender.mouseUp(); |
| } |
| } |
| </script> |
| </head> |
| <body onload="runTest()"> |
| <div id="outerBox"> |
| <div id="innerBox"> |
| </div> |
| </div> |
| <p>Test for <i>bug 95373</i>: <a href="https://bugs.webkit.org/show_bug.cgi?id=95373">https://bugs.webkit.org/show_bug.cgi?id=95373</a> (border-radius) when border-radius:50% there is still 'invisible' square box |
| </p> |
| <pre id="console"> |
| </pre> |
| </body> |
| </html> |