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

Side by Side Diff: Tools/GardeningServer/ui/ct-results-comparison-zoomer.html

Issue 728023004: Remove GardeningServer. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 1 month 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 | Annotate | Revision Log
OLDNEW
(Empty)
1 <!--
2 Copyright 2014 The Chromium Authors. All rights reserved.
3 Use of this source code is governed by a BSD-style license that can be
4 found in the LICENSE file.
5 -->
6
7 <polymer-element name="ct-results-comparison-zoomer" attributes="expectedUrl act ualUrl diffUrl position">
8 <template>
9 <style>
10 :host {
11 background-color: silver;
12 border: 1px solid gray;
13 box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
14 display: flex;
15 pointer-events: none;
16 position: fixed;
17 top: 0;
18 width: 100%;
19 z-index: 1;
20 }
21
22 :host > * {
23 flex: 1;
24 }
25
26 .label {
27 background-color: white;
28 text-align: center;
29 }
30
31 .container {
32 border: 1px solid gray;
33 height: 400px;
34 line-height: 0;
35 }
36
37 .container > img {
38 display: none;
39 }
40 </style>
41
42 <div>
43 <div class="label">Expected</div>
44 <div id="expectedZoomer" class="container">
45 <img src="{{ expectedUrl }}">
46 <canvas></canvas>
47 </div>
48 </div>
49
50 <div>
51 <div class="label">Actual</div>
52 <div id="actualZoomer" class="container">
53 <img src="{{ actualUrl }}">
54 <canvas></canvas>
55 </div>
56 </div>
57
58 <div>
59 <div class="label">Diff</div>
60 <div id="diffZoomer" class="container">
61 <img src="{{ diffUrl }}">
62 <canvas></canvas>
63 </div>
64 </div>
65 </template>
66 <script>
67 (function() {
68 var kResultWidth = 800;
69 var kResultHeight = 600;
70 var kZoomFactor = 6;
71 var kZoomedResultWidth = kResultWidth * kZoomFactor;
72 var kZoomedResultHeight = kResultHeight * kZoomFactor;
73
74 Polymer({
75 expectedUrl: '',
76 actualUrl: '',
77 diffUrl: '',
78 position: null,
79 _drawScheduled: false,
80
81 positionChanged: function() {
82 if (!this._drawScheduled) {
83 this._drawScheduled = true;
84 this.async(this._drawAll);
85 }
86 },
87
88 _drawAll: function() {
89 this._drawScheduled = false;
90
91 if (!this.position)
92 return;
93
94 this._draw(this.$.expectedZoomer);
95 this._draw(this.$.actualZoomer);
96 this._draw(this.$.diffZoomer);
97 },
98
99 _draw: function(imageContainer) {
100 var canvas = imageContainer.querySelector('canvas');
101 canvas.width = imageContainer.clientWidth;
102 canvas.height = imageContainer.clientHeight;
103 this._drawCanvas(canvas.getContext('2d'), imageContainer);
104 },
105
106 _drawCanvas: function(context, imageContainer) {
107 context.imageSmoothingEnabled = false;
108 context.translate(imageContainer.clientWidth / 2, imageContainer.clientH eight / 2);
109 context.translate(-this.position.x * kZoomedResultWidth, -this.position. y * kZoomedResultHeight);
110 context.strokeRect(-1.5, -1.5, kZoomedResultWidth + 2, kZoomedResultHeig ht + 2);
111 context.scale(kZoomFactor, kZoomFactor);
112 context.drawImage(imageContainer.querySelector('img'), 0, 0);
113 },
114 });
115 })();
116 </script>
117 </polymer-element>
OLDNEW
« no previous file with comments | « Tools/GardeningServer/ui/ct-results-comparison.html ('k') | Tools/GardeningServer/ui/ct-results-detail.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698