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

Side by Side Diff: third_party/WebKit/LayoutTests/svg/zoom/page/zoom-get-screen-ctm.html

Issue 2711503002: Compute a more correct "screen scope" transform for SVGSVGElement (Closed)
Patch Set: Tweak test Created 3 years, 10 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
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <title>SVGGraphicsElement.getScreenCTM subject to page zoom</title> 2 <title>SVGGraphicsElement.getScreenCTM subject to page zoom</title>
3 <script src="../../../resources/testharness.js"></script> 3 <script src="../../../resources/testharness.js"></script>
4 <script src="../../../resources/testharnessreport.js"></script> 4 <script src="../../../resources/testharnessreport.js"></script>
5 <script src="../../../resources/run-after-layout-and-paint.js"></script> 5 <script src="../../../resources/run-after-layout-and-paint.js"></script>
6 <style> 6 <style>
7 body { margin: 0; padding: 0; } 7 body { margin: 0; padding: 0; }
8 </style> 8 </style>
9 <div style="width: 100px; height: 100px;"></div> 9 <div style="width: 100px; height: 100px;"></div>
10 <svg id="svg1" width="400" height="400"> 10 <svg id="svg1" width="400" height="400">
11 <rect width="100" height="100" fill="green"/> 11 <rect width="100" height="100" fill="green"/>
12 <svg id="svg2" x="100" y="100" width="300" height="300"> 12 <svg id="svg2" x="100" y="100" width="300" height="300">
13 <rect width="100" height="100" fill="green"/> 13 <rect width="100" height="100" fill="green"/>
14 <svg id="svg3" x="100" y="100" width="200" height="200"> 14 <svg id="svg3" x="100" y="100" width="200" height="200">
15 <rect width="100" height="100" fill="green"/> 15 <rect width="100" height="100" fill="green"/>
16 <svg id="svg4" x="100" y="100" width="100" height="100"> 16 <svg id="svg4" x="100" y="100" width="100" height="100">
17 <rect width="100" height="100" fill="green"/> 17 <rect width="100" height="100" fill="green"/>
18 </svg> 18 </svg>
19 </svg> 19 </svg>
20 </svg> 20 </svg>
21 </svg> 21 </svg>
22 <script> 22 <script>
23 function assert_matrix_equals(actual, expected) { 23 function assert_matrix_approx_equals(actual, expected) {
24 for (let prop of [ 'a', 'b', 'c', 'd', 'e', 'f']) 24 for (let prop of [ 'a', 'b', 'c', 'd', 'e', 'f'])
25 assert_equals(actual[prop], expected[prop], prop); 25 assert_approx_equals(actual[prop], expected[prop], 5e-6, prop);
26 } 26 }
27 27
28 async_test(t => { 28 async_test(t => {
29 runAfterLayoutAndPaint(t.step_func_done(() => { 29 runAfterLayoutAndPaint(t.step_func_done(() => {
30 eventSender.zoomPageIn(); 30 eventSender.zoomPageIn();
31 eventSender.zoomPageIn(); 31 eventSender.zoomPageIn();
32 32
33 assert_matrix_equals(document.getElementById('svg1').getScreenCTM(), 33 assert_matrix_approx_equals(document.getElementById('svg1').getScreenCTM(),
34 { a: 1, b: 0, c: 0, d: 1, e: 0, f: 100 }); 34 { a: 1, b: 0, c: 0, d: 1, e: 0, f: 100 });
35 assert_matrix_equals(document.getElementById('svg2').getScreenCTM(), 35 assert_matrix_approx_equals(document.getElementById('svg2').getScreenCTM(),
36 { a: 1, b: 0, c: 0, d: 1, e: 100, f: 200 }); 36 { a: 1, b: 0, c: 0, d: 1, e: 100, f: 200 });
37 assert_matrix_equals(document.getElementById('svg3').getScreenCTM(), 37 assert_matrix_approx_equals(document.getElementById('svg3').getScreenCTM(),
38 { a: 1, b: 0, c: 0, d: 1, e: 200, f: 300 }); 38 { a: 1, b: 0, c: 0, d: 1, e: 200, f: 300 });
39 assert_matrix_equals(document.getElementById('svg4').getScreenCTM(), 39 assert_matrix_approx_equals(document.getElementById('svg4').getScreenCTM(),
40 { a: 1, b: 0, c: 0, d: 1, e: 300, f: 400 }); 40 { a: 1, b: 0, c: 0, d: 1, e: 300, f: 400 });
41 })); 41 }));
42 }); 42 });
43 </script> 43 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698