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

Side by Side Diff: tracing/tracing/extras/chrome/blame_context/render_frame.html

Issue 2016213002: Introduce base classes for blame contexts (Closed) Base URL: https://github.com/catapult-project/catapult.git@master
Patch Set: Add frame_blame_context_test.html; And some other revision 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
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <!-- 2 <!--
3 Copyright (c) 2016 The Chromium Authors. All rights reserved. 3 Copyright (c) 2016 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be 4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file. 5 found in the LICENSE file.
6 --> 6 -->
7 7
8 <link rel="import" href="/tracing/model/object_instance.html"> 8 <link rel="import" href="/tracing/extras/chrome/blame_context/frame_blame_contex t_base.html">
9 9
10 <script> 10 <script>
11 'use strict'; 11 'use strict';
12 12
13 /**
14 * @fileoverview Trace viewer side's correspondence of Chrome's
15 * content::FrameBlameContext class.
16 *
17 */
13 tr.exportTo('tr.e.chrome', function() { 18 tr.exportTo('tr.e.chrome', function() {
14 var constants = tr.e.cc.constants; 19 var FrameBlameContextBaseSnapshot = tr.e.chrome.FrameBlameContextBaseSnapshot;
15 20 var FrameBlameContextBaseInstance = tr.e.chrome.FrameBlameContextBaseInstance;
16 var ObjectSnapshot = tr.model.ObjectSnapshot;
17 var ObjectInstance = tr.model.ObjectInstance;
18 21
19 function RenderFrameSnapshot() { 22 function RenderFrameSnapshot() {
20 ObjectSnapshot.apply(this, arguments); 23 FrameBlameContextBaseSnapshot.apply(this, arguments);
21 } 24 }
22 25
23 RenderFrameSnapshot.prototype = { 26 RenderFrameSnapshot.prototype = {
24 __proto__: ObjectSnapshot.prototype, 27 __proto__: FrameBlameContextBaseSnapshot.prototype,
25
26 preInitialize: function() {
27 },
28
29 initialize: function() {
30 },
31 28
32 referencedAt: function(item, object, field) { 29 referencedAt: function(item, object, field) {
30 FrameBlameContextBaseSnapshot.prototype.referencedAt.apply(this,
31 arguments);
33 if (item instanceof tr.e.chrome.FrameTreeNodeSnapshot && 32 if (item instanceof tr.e.chrome.FrameTreeNodeSnapshot &&
34 object === item.args && 33 object === item.args &&
35 field === 'RenderFrame') { 34 field === 'RenderFrame') {
36 this.args.frameTreeNode = item; 35 this.args.frameTreeNode = item;
37 } 36 }
38 }, 37 },
39 38
39 get crossProcessCounterpart() {
40 if (this.args.frameTreeNode instanceof tr.e.chrome.FrameTreeNodeSnapshot)
41 return this.args.frameTreeNode;
42 },
43
44 get url() {
45 if (this.crossProcessCounterpart)
46 return this.crossProcessCounterpart.url;
47 },
48
40 get userFriendlyName() { 49 get userFriendlyName() {
41 return 'RenderFrame'; 50 return 'RenderFrame';
42 } 51 }
43 }; 52 };
44 53
45 ObjectSnapshot.register( 54 tr.model.ObjectSnapshot.register(
46 RenderFrameSnapshot, 55 RenderFrameSnapshot,
47 {typeName: 'RenderFrame'}); 56 {typeName: 'RenderFrame'});
48 57
49 function RenderFrameInstance() { 58 function RenderFrameInstance() {
50 ObjectInstance.apply(this, arguments); 59 FrameBlameContextBaseInstance.apply(this, arguments);
51 } 60 }
52 61
53 RenderFrameInstance.prototype = { 62 RenderFrameInstance.prototype = {
54 __proto__: ObjectInstance.prototype 63 __proto__: FrameBlameContextBaseInstance.prototype,
64
65 get isTracedByRenderer() {
66 return true;
67 }
55 }; 68 };
56 69
57 ObjectInstance.register( 70 tr.model.ObjectInstance.register(
58 RenderFrameInstance, 71 RenderFrameInstance,
59 {typeName: 'RenderFrame'}); 72 {typeName: 'RenderFrame'});
60 73
61 return { 74 return {
62 RenderFrameSnapshot: RenderFrameSnapshot, 75 RenderFrameSnapshot: RenderFrameSnapshot,
63 RenderFrameInstance: RenderFrameInstance 76 RenderFrameInstance: RenderFrameInstance
64 }; 77 };
65 }); 78 });
66 </script> 79 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698