| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 | 4 |
| 5 /** | 5 /** |
| 6 * @param {!WebInspector.TracingModel} tracingModel | 6 * @param {!WebInspector.TracingModel} tracingModel |
| 7 * @constructor | 7 * @constructor |
| 8 * @extends {WebInspector.TimelineModel} | 8 * @extends {WebInspector.TimelineModel} |
| 9 */ | 9 */ |
| 10 WebInspector.TracingTimelineModel = function(tracingModel) | 10 WebInspector.TracingTimelineModel = function(tracingModel) |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 | 25 |
| 26 RequestMainThreadFrame: "RequestMainThreadFrame", | 26 RequestMainThreadFrame: "RequestMainThreadFrame", |
| 27 BeginFrame: "BeginFrame", | 27 BeginFrame: "BeginFrame", |
| 28 BeginMainThreadFrame: "BeginMainThreadFrame", | 28 BeginMainThreadFrame: "BeginMainThreadFrame", |
| 29 ActivateLayerTree: "ActivateLayerTree", | 29 ActivateLayerTree: "ActivateLayerTree", |
| 30 DrawFrame: "DrawFrame", | 30 DrawFrame: "DrawFrame", |
| 31 ScheduleStyleRecalculation: "ScheduleStyleRecalculation", | 31 ScheduleStyleRecalculation: "ScheduleStyleRecalculation", |
| 32 RecalculateStyles: "RecalculateStyles", | 32 RecalculateStyles: "RecalculateStyles", |
| 33 InvalidateLayout: "InvalidateLayout", | 33 InvalidateLayout: "InvalidateLayout", |
| 34 Layout: "Layout", | 34 Layout: "Layout", |
| 35 UpdateLayer: "UpdateLayer", |
| 35 PaintSetup: "PaintSetup", | 36 PaintSetup: "PaintSetup", |
| 36 Paint: "Paint", | 37 Paint: "Paint", |
| 37 PaintImage: "PaintImage", | 38 PaintImage: "PaintImage", |
| 38 Rasterize: "Rasterize", | 39 Rasterize: "Rasterize", |
| 39 RasterTask: "RasterTask", | 40 RasterTask: "RasterTask", |
| 40 ScrollLayer: "ScrollLayer", | 41 ScrollLayer: "ScrollLayer", |
| 41 CompositeLayers: "CompositeLayers", | 42 CompositeLayers: "CompositeLayers", |
| 42 | 43 |
| 43 ParseHTML: "ParseHTML", | 44 ParseHTML: "ParseHTML", |
| 44 | 45 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 CallStack: "CallStack", | 83 CallStack: "CallStack", |
| 83 SetLayerTreeId: "SetLayerTreeId", | 84 SetLayerTreeId: "SetLayerTreeId", |
| 84 TracingStartedInPage: "TracingStartedInPage", | 85 TracingStartedInPage: "TracingStartedInPage", |
| 85 | 86 |
| 86 DecodeImage: "Decode Image", | 87 DecodeImage: "Decode Image", |
| 87 ResizeImage: "Resize Image", | 88 ResizeImage: "Resize Image", |
| 88 DrawLazyPixelRef: "Draw LazyPixelRef", | 89 DrawLazyPixelRef: "Draw LazyPixelRef", |
| 89 DecodeLazyPixelRef: "Decode LazyPixelRef", | 90 DecodeLazyPixelRef: "Decode LazyPixelRef", |
| 90 | 91 |
| 91 LazyPixelRef: "LazyPixelRef", | 92 LazyPixelRef: "LazyPixelRef", |
| 92 LayerTreeHostImplSnapshot: "cc::LayerTreeHostImpl" | 93 LayerTreeHostImplSnapshot: "cc::LayerTreeHostImpl", |
| 94 PictureSnapshot: "cc::Picture" |
| 93 }; | 95 }; |
| 94 | 96 |
| 95 WebInspector.TracingTimelineModel.defaultTracingCategoryFilter = "*,disabled-by-
default-cc.debug,disabled-by-default-devtools.timeline,disabled-by-default-devto
ols.timeline.frame"; | 97 WebInspector.TracingTimelineModel.defaultTracingCategoryFilter = "*,disabled-by-
default-cc.debug,disabled-by-default-devtools.timeline,disabled-by-default-devto
ols.timeline.frame"; |
| 96 | 98 |
| 97 WebInspector.TracingTimelineModel.prototype = { | 99 WebInspector.TracingTimelineModel.prototype = { |
| 98 /** | 100 /** |
| 99 * @param {boolean} captureStacks | 101 * @param {boolean} captureStacks |
| 100 * @param {boolean} captureMemory | 102 * @param {boolean} captureMemory |
| 103 * @param {boolean} capturePictures |
| 101 */ | 104 */ |
| 102 startRecording: function(captureStacks, captureMemory) | 105 startRecording: function(captureStacks, captureMemory, capturePictures) |
| 103 { | 106 { |
| 104 var categories; | 107 var categories; |
| 105 if (WebInspector.experimentsSettings.timelineTracingMode.isEnabled()) { | 108 if (WebInspector.experimentsSettings.timelineTracingMode.isEnabled()) { |
| 106 categories = WebInspector.TracingTimelineModel.defaultTracingCategor
yFilter; | 109 categories = WebInspector.TracingTimelineModel.defaultTracingCategor
yFilter; |
| 107 } else { | 110 } else { |
| 108 var categoriesArray = ["disabled-by-default-devtools.timeline", "dis
abled-by-default-devtools.timeline.frame", "devtools"]; | 111 var categoriesArray = ["disabled-by-default-devtools.timeline", "dis
abled-by-default-devtools.timeline.frame", "devtools"]; |
| 109 if (captureStacks) | 112 if (captureStacks) |
| 110 categoriesArray.push("disabled-by-default-devtools.timeline.stac
k"); | 113 categoriesArray.push("disabled-by-default-devtools.timeline.stac
k"); |
| 114 if (capturePictures) |
| 115 categoriesArray.push("disabled-by-default-devtools.timeline.laye
rs", "disabled-by-default-devtools.timeline.picture"); |
| 111 categories = categoriesArray.join(","); | 116 categories = categoriesArray.join(","); |
| 112 } | 117 } |
| 113 this._startRecordingWithCategories(categories); | 118 this._startRecordingWithCategories(categories); |
| 114 }, | 119 }, |
| 115 | 120 |
| 116 stopRecording: function() | 121 stopRecording: function() |
| 117 { | 122 { |
| 118 this._tracingModel.stop(this._didStopRecordingTraceEvents.bind(this)); | 123 this._tracingModel.stop(this._didStopRecordingTraceEvents.bind(this)); |
| 119 }, | 124 }, |
| 120 | 125 |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 247 | 252 |
| 248 _resetProcessingState: function() | 253 _resetProcessingState: function() |
| 249 { | 254 { |
| 250 this._sendRequestEvents = {}; | 255 this._sendRequestEvents = {}; |
| 251 this._timerEvents = {}; | 256 this._timerEvents = {}; |
| 252 this._requestAnimationFrameEvents = {}; | 257 this._requestAnimationFrameEvents = {}; |
| 253 this._layoutInvalidate = {}; | 258 this._layoutInvalidate = {}; |
| 254 this._lastScheduleStyleRecalculation = {}; | 259 this._lastScheduleStyleRecalculation = {}; |
| 255 this._webSocketCreateEvents = {}; | 260 this._webSocketCreateEvents = {}; |
| 256 this._paintImageEventByPixelRefId = {}; | 261 this._paintImageEventByPixelRefId = {}; |
| 257 | 262 this._lastPaintForLayer = {}; |
| 258 this._lastRecalculateStylesEvent = null; | 263 this._lastRecalculateStylesEvent = null; |
| 259 this._currentScriptEvent = null; | 264 this._currentScriptEvent = null; |
| 260 this._eventStack = []; | 265 this._eventStack = []; |
| 261 }, | 266 }, |
| 262 | 267 |
| 263 /** | 268 /** |
| 264 * @param {number} startTime | 269 * @param {number} startTime |
| 265 * @param {?number} endTime | 270 * @param {?number} endTime |
| 266 * @param {!WebInspector.TracingModel.Thread} mainThread | 271 * @param {!WebInspector.TracingModel.Thread} mainThread |
| 267 * @param {!WebInspector.TracingModel.Thread} thread | 272 * @param {!WebInspector.TracingModel.Thread} thread |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 387 if (!this._currentScriptEvent) | 392 if (!this._currentScriptEvent) |
| 388 this._currentScriptEvent = event; | 393 this._currentScriptEvent = event; |
| 389 break; | 394 break; |
| 390 | 395 |
| 391 case recordTypes.SetLayerTreeId: | 396 case recordTypes.SetLayerTreeId: |
| 392 this._inspectedTargetLayerTreeId = event.args["layerTreeId"]; | 397 this._inspectedTargetLayerTreeId = event.args["layerTreeId"]; |
| 393 break; | 398 break; |
| 394 | 399 |
| 395 case recordTypes.Paint: | 400 case recordTypes.Paint: |
| 396 event.highlightQuad = event.args["data"]["clip"]; | 401 event.highlightQuad = event.args["data"]["clip"]; |
| 397 // Initionally fall through. | 402 event.backendNodeId = event.args["data"]["nodeId"]; |
| 403 var layerUpdateEvent = this._findAncestorEvent(recordTypes.UpdateLay
er); |
| 404 if (!layerUpdateEvent || layerUpdateEvent.args["layerTreeId"] !== th
is._inspectedTargetLayerTreeId) |
| 405 break; |
| 406 this._lastPaintForLayer[layerUpdateEvent.args["layerId"]] = event; |
| 407 break; |
| 408 |
| 409 case recordTypes.PictureSnapshot: |
| 410 var layerUpdateEvent = this._findAncestorEvent(recordTypes.UpdateLay
er); |
| 411 if (!layerUpdateEvent || layerUpdateEvent.args["layerTreeId"] !== th
is._inspectedTargetLayerTreeId) |
| 412 break; |
| 413 var paintEvent = this._lastPaintForLayer[layerUpdateEvent.args["laye
rId"]]; |
| 414 if (!paintEvent) |
| 415 break; |
| 416 paintEvent.picture = event.args["snapshot"]["skp64"]; |
| 417 break; |
| 418 |
| 398 case recordTypes.ScrollLayer: | 419 case recordTypes.ScrollLayer: |
| 399 event.backendNodeId = event.args["data"]["nodeId"]; | 420 event.backendNodeId = event.args["data"]["nodeId"]; |
| 400 break; | 421 break; |
| 401 | 422 |
| 402 case recordTypes.PaintImage: | 423 case recordTypes.PaintImage: |
| 403 event.backendNodeId = event.args["data"]["nodeId"]; | 424 event.backendNodeId = event.args["data"]["nodeId"]; |
| 404 event.imageURL = event.args["data"]["url"]; | 425 event.imageURL = event.args["data"]["url"]; |
| 405 break; | 426 break; |
| 406 | 427 |
| 407 case recordTypes.DecodeImage: | 428 case recordTypes.DecodeImage: |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 665 { | 686 { |
| 666 var tokens = [this.title()]; | 687 var tokens = [this.title()]; |
| 667 var data = this._event.args.data; | 688 var data = this._event.args.data; |
| 668 if (data) { | 689 if (data) { |
| 669 for (var key in data) | 690 for (var key in data) |
| 670 tokens.push(data[key]); | 691 tokens.push(data[key]); |
| 671 } | 692 } |
| 672 return regExp.test(tokens.join("|")); | 693 return regExp.test(tokens.join("|")); |
| 673 } | 694 } |
| 674 } | 695 } |
| OLD | NEW |