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

Unified Diff: third_party/WebKit/Source/devtools/front_end/coverage/CoverageListView.js

Issue 2888843002: DevTools: fix race when revealing formatted source code (Closed)
Patch Set: rebased Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/front_end/coverage/CoverageListView.js
diff --git a/third_party/WebKit/Source/devtools/front_end/coverage/CoverageListView.js b/third_party/WebKit/Source/devtools/front_end/coverage/CoverageListView.js
index 9ee062b6f97c6dc4af9a36079887b5d3122b0f33..bac416f7922bd38bed7523305578da37f1e9cf17 100644
--- a/third_party/WebKit/Source/devtools/front_end/coverage/CoverageListView.js
+++ b/third_party/WebKit/Source/devtools/front_end/coverage/CoverageListView.js
@@ -99,12 +99,8 @@ Coverage.CoverageListView = class extends UI.VBox {
this._sortingChanged();
}
- /**
- * @param {!Common.Event} event
- */
- _onOpenedNode(event) {
- var node = /** @type Coverage.CoverageListView.GridNode */ (event.data);
- this._revealSourceForNode(node);
+ _onOpenedNode() {
+ this._revealSourceForSelectedNode();
}
/**
@@ -114,13 +110,11 @@ Coverage.CoverageListView = class extends UI.VBox {
if (!isEnterKey(event))
return;
event.consume(true);
- this._revealSourceForNode(this._dataGrid.selectedNode);
+ this._revealSourceForSelectedNode();
}
- /**
- * @param {?DataGrid.DataGridNode} node
- */
- async _revealSourceForNode(node) {
+ async _revealSourceForSelectedNode() {
+ var node = this._dataGrid.selectedNode;
if (!node)
return;
var coverageInfo = /** @type {!Coverage.CoverageListView.GridNode} */ (node)._coverageInfo;
@@ -130,10 +124,12 @@ Coverage.CoverageListView = class extends UI.VBox {
var content = await sourceCode.requestContent();
if (TextUtils.isMinified(content)) {
var formatData = await Sources.sourceFormatter.format(sourceCode);
- Common.Revealer.reveal(formatData.formattedSourceCode);
- } else {
- Common.Revealer.reveal(sourceCode);
+ // ------------ ASYNC ------------
+ sourceCode = formatData.formattedSourceCode;
}
+ if (this._dataGrid.selectedNode !== node)
+ return;
+ Common.Revealer.reveal(sourceCode);
}
_sortingChanged() {

Powered by Google App Engine
This is Rietveld 408576698