Tests/LibWeb: Add hit test for border-radius clip
This test demonstrates that hit testing incorrectly hits elements in areas clipped by border-radius. The corner point (5,5) should not hit the target element because it falls outside the rounded corner, but currently it does.
This commit is contained in:
parent
44bfb32d47
commit
0db9ce6131
2 changed files with 38 additions and 0 deletions
6
Tests/LibWeb/Text/expected/hit-test-border-radius.txt
Normal file
6
Tests/LibWeb/Text/expected/hit-test-border-radius.txt
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
Corner (5,5):
|
||||
<DIV id="target">
|
||||
Near corner (25,25):
|
||||
<DIV id="target">
|
||||
Center (100,100):
|
||||
<DIV id="target">
|
||||
32
Tests/LibWeb/Text/input/hit-test-border-radius.html
Normal file
32
Tests/LibWeb/Text/input/hit-test-border-radius.html
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
<!DOCTYPE html>
|
||||
<script src="include.js"></script>
|
||||
<style>
|
||||
#target {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
background: blue;
|
||||
border-radius: 50px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
<div id="target"></div>
|
||||
<script>
|
||||
test(() => {
|
||||
// Corner at (5,5) - outside due to border-radius
|
||||
let hit1 = internals.hitTest(5, 5);
|
||||
// Inside ellipse curve
|
||||
let hit2 = internals.hitTest(25, 25);
|
||||
// Center
|
||||
let hit3 = internals.hitTest(100, 100);
|
||||
|
||||
println("Corner (5,5):");
|
||||
printElement(hit1.node);
|
||||
println("Near corner (25,25):");
|
||||
printElement(hit2.node);
|
||||
println("Center (100,100):");
|
||||
printElement(hit3.node);
|
||||
});
|
||||
</script>
|
||||
Loading…
Reference in a new issue