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

Issue 2073343002: Timeline addTraceProvider API (Closed)

Created:
4 years, 6 months ago by fgao
Modified:
4 years, 5 months ago
Reviewers:
caseq
CC:
apavlov+blink_chromium.org, blink-reviews, caseq+blink_chromium.org, chromium-apps-reviews_chromium.org, chromium-reviews, devtools-reviews_chromium.org, extensions-reviews_chromium.org, kfk_google.com, kozyatinskiy+blink_chromium.org, lushnikov+blink_chromium.org, pfeldman+blink_chromium.org, pfeldman, sergeyv+blink_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Timeline addTraceProvider API 1. Add constructors for Timeline. 2. Add method addTraceProvider. 3. Add Listener onRecordingStarted and fire when Timeline recording starts. 3. Listener onRecordingStopped is not finished yet. BUG=620066

Patch Set 1 #

Patch Set 2 : checkbox prototype #

Patch Set 3 : checkbox prototype #

Patch Set 4 : checkbox prototype #

Total comments: 12

Patch Set 5 : reorganize #

Patch Set 6 : Timeline addTraceProvider API #

Patch Set 7 : timelineFlameChart.js #

Total comments: 6
Unified diffs Side-by-side diffs Delta from patch set Stats (+323 lines, -8 lines) Patch
M third_party/WebKit/Source/devtools/front_end/extensions/ExtensionAPI.js View 1 2 3 4 5 chunks +71 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/devtools/front_end/extensions/ExtensionServer.js View 1 2 3 4 5 5 chunks +54 lines, -1 line 0 comments Download
A third_party/WebKit/Source/devtools/front_end/extensions/ExtensionTraceProvider.js View 1 2 3 4 1 chunk +102 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/devtools/front_end/extensions/module.json View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/devtools/front_end/externs.js View 1 chunk +0 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/devtools/front_end/sdk/TracingModel.js View 1 2 3 4 5 6 2 chunks +6 lines, -0 lines 1 comment Download
M third_party/WebKit/Source/devtools/front_end/timeline/TimelineController.js View 1 2 3 4 5 6 5 chunks +44 lines, -1 line 1 comment Download
M third_party/WebKit/Source/devtools/front_end/timeline/TimelineFlameChart.js View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 1 comment Download
M third_party/WebKit/Source/devtools/front_end/timeline/TimelinePanel.js View 1 2 3 4 5 6 3 chunks +10 lines, -1 line 1 comment Download
M third_party/WebKit/Source/devtools/front_end/timeline_model/TimelineModel.js View 1 2 3 4 5 6 7 chunks +29 lines, -2 lines 2 comments Download
M third_party/WebKit/Source/devtools/front_end/timeline_model/module.json View 1 2 3 4 5 6 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 6 (3 generated)
caseq
Great, looks like you're on the right track, but here's a bunch of mostly stylistic ...
4 years, 6 months ago (2016-06-21 07:29:51 UTC) #2
fgao
Hi Andrey, I have refactored some code and removed the redundant. The extension injected events ...
4 years, 6 months ago (2016-06-23 21:24:30 UTC) #5
caseq
4 years, 5 months ago (2016-07-11 18:58:38 UTC) #6
https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
File third_party/WebKit/Source/devtools/front_end/sdk/TracingModel.js (right):

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
third_party/WebKit/Source/devtools/front_end/sdk/TracingModel.js:225: if
(payload.name == WebInspector.TracingModel.ExtensionEvent) {
Let's avoid this. I think the right way would be either to write the trace
meta-data in the extension that would produce the desired effect or handled the
process/thread titles in the TimelineFlameChart.

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
File third_party/WebKit/Source/devtools/front_end/timeline/TimelineController.js
(right):

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
third_party/WebKit/Source/devtools/front_end/timeline/TimelineController.js:236:
var p = new Promise(function(resolve, reject) {
Let's piggy-back on the existent allProfilesStoppped prommise:
- rename allProfilesStoppedPromise to allTatrgetsStopped or something other
general enough;
- add one promise per trace provider;
- each promise would resolve either upon associated trace provider returning
data or upon a timeout;

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
File third_party/WebKit/Source/devtools/front_end/timeline/TimelineFlameChart.js
(right):

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
third_party/WebKit/Source/devtools/front_end/timeline/TimelineFlameChart.js:829:
//console.log(event);
drop this.

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
File third_party/WebKit/Source/devtools/front_end/timeline/TimelinePanel.js
(right):

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
third_party/WebKit/Source/devtools/front_end/timeline/TimelinePanel.js:397:
this._panelToolbar.appendToolbarItem(this._createSettingCheckbox(
let's also have some handling for trace providers that are registered after the
Timeline panel is shown.

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
File
third_party/WebKit/Source/devtools/front_end/timeline_model/TimelineModel.js
(right):

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
third_party/WebKit/Source/devtools/front_end/timeline_model/TimelineModel.js:165:
Extension: "Extension"
This shouldn't be necessary.

https://codereview.chromium.org/2073343002/diff/120001/third_party/WebKit/Sou...
third_party/WebKit/Source/devtools/front_end/timeline_model/TimelineModel.js:185:
WebInspector.TimelineModel.ExtensionThreadName = "extension";
ditto.

Powered by Google App Engine
This is Rietveld 408576698