Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(217)

Side by Side Diff: third_party/WebKit/LayoutTests/svg/custom/pointer-events-image-css-transform.svg

Issue 2088733006: Deflake svg/custom/pointer-events-image*.svg (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/WebKit/LayoutTests/svg/custom/pointer-events-image.svg ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <?xml version="1.0"?> 1 <?xml version="1.0"?>
2 <!-- This a 1-1 copy of pointer-events-image.svg tests with the addition of -web kit-transform --> 2 <!-- This a 1-1 copy of pointer-events-image.svg tests with the addition of 'tra nsform' -->
3 <svg xmlns="http://www.w3.org/2000/svg" 3 <svg xmlns="http://www.w3.org/2000/svg"
4 xmlns:xlink="http://www.w3.org/1999/xlink" onload="fillTestContent()"> 4 xmlns:xlink="http://www.w3.org/1999/xlink" onload="fillTestContent()">
5 <script type="text/javascript"> 5 <script type="text/javascript">
6 <![CDATA[ 6 <![CDATA[
7
8 if (window.testRunner) 7 if (window.testRunner)
9 testRunner.waitUntilDone(); 8 testRunner.waitUntilDone();
10 9
11 var visibleValues = [ 'visible', 'hidden' ]; 10 var visibleValues = [ 'visible', 'hidden' ];
12 var fillValues = ['none', 'orange' ]; 11 var fillValues = ['none', 'orange' ];
13 var strokeValues = ['none', 'blue' ]; 12 var strokeValues = ['none', 'blue' ];
14 13
15 var pointerEventsValues = ['auto', 'visiblePainted', 'visibleFill', 'visible Stroke', 'visible', 'painted', 'fill', 'stroke', 'all', 'none']; 14 var pointerEventsValues = ['auto', 'visiblePainted', 'visibleFill', 'visible Stroke', 'visible', 'painted', 'fill', 'stroke', 'all', 'none'];
16 15
16 var pendingClicks = [];
17 function queueClick(x, y) {
18 pendingClicks.push({ x: x, y: y });
19 }
20
21 function performClick(x, y) {
22 if (!window.eventSender)
23 return;
24 eventSender.mouseMoveTo(x, y);
25 eventSender.mouseDown();
26 eventSender.mouseUp();
27 }
28
29 var totalImages = visibleValues.length * fillValues.length * strokeValues.le ngth * pointerEventsValues.length;
30 var imagesLoaded = 0;
31
32 function imageLoaded() {
33 // Wait for all images to load, then issue all pending clicks.
34 if (++imagesLoaded < totalImages)
35 return;
36 for (let point of pendingClicks)
37 performClick(point.x, point.y);
38 if (window.testRunner)
39 testRunner.notifyDone();
40 }
41
42 var svgNS = "http://www.w3.org/2000/svg";
43
44 function attachTestImage(container, xOffset, yOffset, attributes) {
45 var fillText = document.createElementNS(svgNS, 'text');
46 fillText.setAttribute('x', xOffset + 5);
47 fillText.setAttribute('y', yOffset + 20);
48 fillText.textContent = "miss";
49 fillText.setAttribute('pointer-events', 'none');
50
51 var img = document.createElementNS(svgNS, 'image');
52 img.setAttributeNS("http://www.w3.org/1999/xlink", 'href', 'resources/red- checker.png');
53 img.setAttribute('x', xOffset / 2);
54 img.setAttribute('y', yOffset / 2);
55 img.setAttribute('width', 25);
56 img.setAttribute('height', 25);
57 img.setAttribute('visibility', attributes.visibility);
58 img.setAttribute('fill', attributes.fill);
59 img.setAttribute('stroke', attributes.stroke);
60 img.setAttribute('pointer-events', attributes.pointerEvents);
61 img.setAttribute('style', "transform: scale(2)");
62 img.onload = imageLoaded;
63 img.onclick = function() { fillText.textContent = 'HIT'; };
64
65 container.appendChild(img);
66 container.appendChild(fillText);
67 }
68
17 var leftEdge = 100; 69 var leftEdge = 100;
18 var topEdge = 30; 70 var topEdge = 30;
19 71
20 var rectSpacing = 57; 72 var rectSpacing = 57;
21 73
22 var svgNS = "http://www.w3.org/2000/svg"; 74 function fillTestContent() {
23
24 function clickHit(event, identifierString) {
25 var fillText = document.getElementById('fill-text' + identifierString);
26 fillText.textContent = 'HIT';
27 }
28
29 function fillTestContent() {
30 var xOffset = leftEdge; 75 var xOffset = leftEdge;
31 var yOffset = topEdge; 76 var yOffset = topEdge;
32 77
33 var testContent = document.getElementById("test-content"); 78 var testContent = document.getElementById("test-content");
34 79
35 for (var pi = 0; pi < pointerEventsValues.length; pi++) { 80 for (var pi = 0; pi < pointerEventsValues.length; pi++) {
36 var eventLabel = document.createElementNS(svgNS, 'text'); 81 var eventLabel = document.createElementNS(svgNS, 'text');
37 eventLabel.setAttribute('x', 0); 82 eventLabel.setAttribute('x', 0);
38 eventLabel.setAttribute('y', yOffset + 30); 83 eventLabel.setAttribute('y', yOffset + 30);
39 eventLabel.textContent = pointerEventsValues[pi]; 84 eventLabel.textContent = pointerEventsValues[pi];
40 testContent.appendChild(eventLabel); 85 testContent.appendChild(eventLabel);
41 86
42 for (var vi = 0; vi < visibleValues.length; vi++) { 87 for (var vi = 0; vi < visibleValues.length; vi++) {
43 for (var fi = 0; fi < fillValues.length; fi++) { 88 for (var fi = 0; fi < fillValues.length; fi++) {
44 for (var si = 0; si < strokeValues.length; si++) { 89 for (var si = 0; si < strokeValues.length; si++) {
45 90 attachTestImage(testContent, xOffset, yOffset, {
46 var identString = "_" + pi + "_" + vi + "_" + fi + "_" + si; 91 visibility: visibleValues[vi],
47 92 fill: fillValues[fi],
48 var img = document.createElementNS(svgNS, 'image'); 93 stroke: strokeValues[si],
49 img.setAttributeNS("http://www.w3.org/1999/xlink", 'href', 'resour ces/red-checker.png'); 94 pointerEvents: pointerEventsValues[pi]
50 img.setAttribute('x', xOffset/2); 95 });
51 img.setAttribute('y', yOffset/2); 96 queueClick(xOffset + 30, yOffset + 30);
52 img.setAttribute('width', 25);
53 img.setAttribute('height', 25);
54 img.setAttribute('visibility', visibleValues[vi]);
55 img.setAttribute('fill', fillValues[fi]);
56 img.setAttribute('stroke', strokeValues[si]);
57 img.setAttribute('pointer-events', pointerEventsValues[pi]);
58 img.setAttribute('style', "transform: scale(2)");
59 img.setAttribute('onclick', 'clickHit(evt, "' + identString + '")' );
60
61 testContent.appendChild(img);
62
63 var fillText = document.createElementNS(svgNS, 'text');
64 fillText.setAttribute('x', xOffset + 5);
65 fillText.setAttribute('y', yOffset + 20);
66 fillText.textContent = "miss";
67 fillText.setAttribute('id', 'fill-text' + identString);
68 fillText.setAttribute('pointer-events', 'none');
69 testContent.appendChild(fillText);
70
71 if (window.eventSender) {
72 // Fill click
73 eventSender.mouseMoveTo(xOffset + 30, yOffset + 30);
74 eventSender.mouseDown();
75 eventSender.mouseUp();
76 }
77 xOffset += rectSpacing; 97 xOffset += rectSpacing;
78 } 98 }
79 } 99 }
80 } 100 }
81 xOffset = leftEdge; 101 xOffset = leftEdge;
82 yOffset += rectSpacing; 102 yOffset += rectSpacing;
83 } 103 }
84
85 if (window.testRunner)
86 testRunner.notifyDone();
87 } 104 }
88 ]]> 105 ]]>
89 </script> 106 </script>
90 107
91 <text x="110" y="20">Visibility: visible</text> 108 <text x="110" y="20">Visibility: visible</text>
92 <text x="340" y="20">Visibility: hidden</text> 109 <text x="340" y="20">Visibility: hidden</text>
93 <g id="test-content"/> 110 <g id="test-content"/>
94 </svg> 111 </svg>
OLDNEW
« no previous file with comments | « third_party/WebKit/LayoutTests/svg/custom/pointer-events-image.svg ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698