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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/sdk/LayerTreeBase.js

Issue 2466123002: DevTools: reformat front-end code to match chromium style. (Closed)
Patch Set: all done Created 4 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4
5 /** @typedef {!{ 4 /** @typedef {!{
6 rect: !DOMAgent.Rect, 5 rect: !DOMAgent.Rect,
7 snapshot: !WebInspector.PaintProfilerSnapshot 6 snapshot: !WebInspector.PaintProfilerSnapshot
8 }} 7 }}
9 */ 8 */
10 WebInspector.SnapshotWithRect; 9 WebInspector.SnapshotWithRect;
11 10
12 /** 11 /**
13 * @interface 12 * @interface
14 */ 13 */
15 WebInspector.Layer = function() 14 WebInspector.Layer = function() {};
16 { 15
16 WebInspector.Layer.prototype = {
17 /**
18 * @return {string}
19 */
20 id: function() {},
21
22 /**
23 * @return {?string}
24 */
25 parentId: function() {},
26
27 /**
28 * @return {?WebInspector.Layer}
29 */
30 parent: function() {},
31
32 /**
33 * @return {boolean}
34 */
35 isRoot: function() {},
36
37 /**
38 * @return {!Array.<!WebInspector.Layer>}
39 */
40 children: function() {},
41
42 /**
43 * @param {!WebInspector.Layer} child
44 */
45 addChild: function(child) {},
46
47 /**
48 * @return {?WebInspector.DOMNode}
49 */
50 node: function() {},
51
52 /**
53 * @return {?WebInspector.DOMNode}
54 */
55 nodeForSelfOrAncestor: function() {},
56
57 /**
58 * @return {number}
59 */
60 offsetX: function() {},
61
62 /**
63 * @return {number}
64 */
65 offsetY: function() {},
66
67 /**
68 * @return {number}
69 */
70 width: function() {},
71
72 /**
73 * @return {number}
74 */
75 height: function() {},
76
77 /**
78 * @return {?Array.<number>}
79 */
80 transform: function() {},
81
82 /**
83 * @return {!Array.<number>}
84 */
85 quad: function() {},
86
87 /**
88 * @return {!Array.<number>}
89 */
90 anchorPoint: function() {},
91
92 /**
93 * @return {boolean}
94 */
95 invisible: function() {},
96
97 /**
98 * @return {number}
99 */
100 paintCount: function() {},
101
102 /**
103 * @return {?DOMAgent.Rect}
104 */
105 lastPaintRect: function() {},
106
107 /**
108 * @return {!Array.<!LayerTreeAgent.ScrollRect>}
109 */
110 scrollRects: function() {},
111
112 /**
113 * @return {number}
114 */
115 gpuMemoryUsage: function() {},
116
117 /**
118 * @param {function(!Array.<string>)} callback
119 */
120 requestCompositingReasons: function(callback) {},
121
122 /**
123 * @return {boolean}
124 */
125 drawsContent: function() {},
126
127 /**
128 * @return {!Array<!Promise<?WebInspector.SnapshotWithRect>>}
129 */
130 snapshots: function() {}
17 }; 131 };
18 132
19 WebInspector.Layer.prototype = { 133 WebInspector.Layer.ScrollRectType = {
20 /** 134 NonFastScrollable: 'NonFastScrollable',
21 * @return {string} 135 TouchEventHandler: 'TouchEventHandler',
22 */ 136 WheelEventHandler: 'WheelEventHandler',
23 id: function() { }, 137 RepaintsOnScroll: 'RepaintsOnScroll'
24
25 /**
26 * @return {?string}
27 */
28 parentId: function() { },
29
30 /**
31 * @return {?WebInspector.Layer}
32 */
33 parent: function() { },
34
35 /**
36 * @return {boolean}
37 */
38 isRoot: function() { },
39
40 /**
41 * @return {!Array.<!WebInspector.Layer>}
42 */
43 children: function() { },
44
45 /**
46 * @param {!WebInspector.Layer} child
47 */
48 addChild: function(child) { },
49
50 /**
51 * @return {?WebInspector.DOMNode}
52 */
53 node: function() { },
54
55 /**
56 * @return {?WebInspector.DOMNode}
57 */
58 nodeForSelfOrAncestor: function() { },
59
60 /**
61 * @return {number}
62 */
63 offsetX: function() { },
64
65 /**
66 * @return {number}
67 */
68 offsetY: function() { },
69
70 /**
71 * @return {number}
72 */
73 width: function() { },
74
75 /**
76 * @return {number}
77 */
78 height: function() { },
79
80 /**
81 * @return {?Array.<number>}
82 */
83 transform: function() { },
84
85 /**
86 * @return {!Array.<number>}
87 */
88 quad: function() { },
89
90 /**
91 * @return {!Array.<number>}
92 */
93 anchorPoint: function() { },
94
95 /**
96 * @return {boolean}
97 */
98 invisible: function() { },
99
100 /**
101 * @return {number}
102 */
103 paintCount: function() { },
104
105 /**
106 * @return {?DOMAgent.Rect}
107 */
108 lastPaintRect: function() { },
109
110 /**
111 * @return {!Array.<!LayerTreeAgent.ScrollRect>}
112 */
113 scrollRects: function() { },
114
115 /**
116 * @return {number}
117 */
118 gpuMemoryUsage: function() { },
119
120 /**
121 * @param {function(!Array.<string>)} callback
122 */
123 requestCompositingReasons: function(callback) { },
124
125 /**
126 * @return {boolean}
127 */
128 drawsContent: function() { },
129
130 /**
131 * @return {!Array<!Promise<?WebInspector.SnapshotWithRect>>}
132 */
133 snapshots: function() { }
134 }
135
136 WebInspector.Layer.ScrollRectType = {
137 NonFastScrollable: "NonFastScrollable",
138 TouchEventHandler: "TouchEventHandler",
139 WheelEventHandler: "WheelEventHandler",
140 RepaintsOnScroll: "RepaintsOnScroll"
141 }; 138 };
142 139
143 /** 140 /**
144 * @constructor 141 * @unrestricted
145 * @param {?WebInspector.Target} target 142 */
146 */ 143 WebInspector.LayerTreeBase = class {
147 WebInspector.LayerTreeBase = function(target) 144 /**
148 { 145 * @param {?WebInspector.Target} target
146 */
147 constructor(target) {
149 this._target = target; 148 this._target = target;
150 this._domModel = target ? WebInspector.DOMModel.fromTarget(target) : null; 149 this._domModel = target ? WebInspector.DOMModel.fromTarget(target) : null;
151 this._layersById = {}; 150 this._layersById = {};
152 this._root = null; 151 this._root = null;
153 this._contentRoot = null; 152 this._contentRoot = null;
154 /** @type Map<number, ?WebInspector.DOMNode> */ 153 /** @type Map<number, ?WebInspector.DOMNode> */
155 this._backendNodeIdToNode = new Map(); 154 this._backendNodeIdToNode = new Map();
156 }; 155 }
157 156
158 WebInspector.LayerTreeBase.prototype = { 157 /**
159 /** 158 * @return {?WebInspector.Target}
160 * @return {?WebInspector.Target} 159 */
161 */ 160 target() {
162 target: function() 161 return this._target;
163 { 162 }
164 return this._target; 163
165 }, 164 /**
165 * @return {?WebInspector.Layer}
166 */
167 root() {
168 return this._root;
169 }
170
171 /**
172 * @param {?WebInspector.Layer} root
173 * @protected
174 */
175 setRoot(root) {
176 this._root = root;
177 }
178
179 /**
180 * @return {?WebInspector.Layer}
181 */
182 contentRoot() {
183 return this._contentRoot;
184 }
185
186 /**
187 * @param {?WebInspector.Layer} contentRoot
188 * @protected
189 */
190 setContentRoot(contentRoot) {
191 this._contentRoot = contentRoot;
192 }
193
194 /**
195 * @param {function(!WebInspector.Layer)} callback
196 * @param {?WebInspector.Layer=} root
197 * @return {boolean}
198 */
199 forEachLayer(callback, root) {
200 if (!root) {
201 root = this.root();
202 if (!root)
203 return false;
204 }
205 return callback(root) || root.children().some(this.forEachLayer.bind(this, c allback));
206 }
207
208 /**
209 * @param {string} id
210 * @return {?WebInspector.Layer}
211 */
212 layerById(id) {
213 return this._layersById[id] || null;
214 }
215
216 /**
217 * @param {!Set<number>} requestedNodeIds
218 * @param {function()} callback
219 */
220 _resolveBackendNodeIds(requestedNodeIds, callback) {
221 if (!requestedNodeIds.size || !this._domModel) {
222 callback();
223 return;
224 }
225 if (this._domModel)
226 this._domModel.pushNodesByBackendIdsToFrontend(requestedNodeIds, populateB ackendNodeMap.bind(this));
166 227
167 /** 228 /**
168 * @return {?WebInspector.Layer} 229 * @this {WebInspector.LayerTreeBase}
230 * @param {?Map<number, ?WebInspector.DOMNode>} nodesMap
169 */ 231 */
170 root: function() 232 function populateBackendNodeMap(nodesMap) {
171 { 233 if (nodesMap) {
172 return this._root; 234 for (var nodeId of nodesMap.keysArray())
173 }, 235 this._backendNodeIdToNode.set(nodeId, nodesMap.get(nodeId) || null);
236 }
237 callback();
238 }
239 }
174 240
175 /** 241 /**
176 * @param {?WebInspector.Layer} root 242 * @param {!{width: number, height: number}} viewportSize
177 * @protected 243 */
178 */ 244 setViewportSize(viewportSize) {
179 setRoot: function(root) 245 this._viewportSize = viewportSize;
180 { 246 }
181 this._root = root;
182 },
183 247
184 /** 248 /**
185 * @return {?WebInspector.Layer} 249 * @return {!{width: number, height: number}|undefined}
186 */ 250 */
187 contentRoot: function() 251 viewportSize() {
188 { 252 return this._viewportSize;
189 return this._contentRoot; 253 }
190 },
191 254
192 /** 255 /**
193 * @param {?WebInspector.Layer} contentRoot 256 * @param {number} id
194 * @protected 257 * @return {?WebInspector.DOMNode}
195 */ 258 */
196 setContentRoot: function(contentRoot) 259 _nodeForId(id) {
197 { 260 return this._domModel ? this._domModel.nodeForId(id) : null;
198 this._contentRoot = contentRoot; 261 }
199 },
200
201 /**
202 * @param {function(!WebInspector.Layer)} callback
203 * @param {?WebInspector.Layer=} root
204 * @return {boolean}
205 */
206 forEachLayer: function(callback, root)
207 {
208 if (!root) {
209 root = this.root();
210 if (!root)
211 return false;
212 }
213 return callback(root) || root.children().some(this.forEachLayer.bind(thi s, callback));
214 },
215
216 /**
217 * @param {string} id
218 * @return {?WebInspector.Layer}
219 */
220 layerById: function(id)
221 {
222 return this._layersById[id] || null;
223 },
224
225 /**
226 * @param {!Set<number>} requestedNodeIds
227 * @param {function()} callback
228 */
229 _resolveBackendNodeIds: function(requestedNodeIds, callback)
230 {
231 if (!requestedNodeIds.size || !this._domModel) {
232 callback();
233 return;
234 }
235 if (this._domModel)
236 this._domModel.pushNodesByBackendIdsToFrontend(requestedNodeIds, pop ulateBackendNodeMap.bind(this));
237
238 /**
239 * @this {WebInspector.LayerTreeBase}
240 * @param {?Map<number, ?WebInspector.DOMNode>} nodesMap
241 */
242 function populateBackendNodeMap(nodesMap)
243 {
244 if (nodesMap) {
245 for (var nodeId of nodesMap.keysArray())
246 this._backendNodeIdToNode.set(nodeId, nodesMap.get(nodeId) | | null);
247 }
248 callback();
249 }
250 },
251
252 /**
253 * @param {!{width: number, height: number}} viewportSize
254 */
255 setViewportSize: function(viewportSize)
256 {
257 this._viewportSize = viewportSize;
258 },
259
260 /**
261 * @return {!{width: number, height: number}|undefined}
262 */
263 viewportSize: function()
264 {
265 return this._viewportSize;
266 },
267
268 /**
269 * @param {number} id
270 * @return {?WebInspector.DOMNode}
271 */
272 _nodeForId: function(id)
273 {
274 return this._domModel ? this._domModel.nodeForId(id) : null;
275 }
276 }; 262 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698