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

Unified Diff: third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js

Issue 2728543002: DevTools: refactor Common.Renderer for DOM nodes (Closed)
Patch Set: fixup Created 3 years, 10 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/console/ConsoleViewMessage.js
diff --git a/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js b/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js
index 4e10451d802bff388cede7bb0e32fbeacb6a2c2a..7c9e4e99b805e608f3a6e41e010434d9c5c44a99 100644
--- a/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js
+++ b/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js
@@ -598,29 +598,42 @@ Console.ConsoleViewMessage = class {
}
/**
- * @param {!SDK.RemoteObject} object
+ * @param {!SDK.RemoteObject} remoteObject
* @return {!Element}
*/
- _formatParameterAsNode(object) {
+ _formatParameterAsNode(remoteObject) {
var result = createElement('span');
- Common.Renderer.renderPromise(object).then(appendRenderer.bind(this), failedToRender.bind(this));
- return result;
/**
* @param {!Element} rendererElement
- * @this {Console.ConsoleViewMessage}
*/
- function appendRenderer(rendererElement) {
+ var appendRenderer = rendererElement => {
result.appendChild(rendererElement);
this._formattedParameterAsNodeForTest();
+ };
+
+ var failedToRender = () => {
+ result.appendChild(this._formatParameterAsObject(remoteObject, false));
pfeldman 2017/03/01 02:37:44 don't use arrow function here and above, leave the
chenwilliam 2017/03/02 00:06:55 Done.
+ };
+
+ var domModel = SDK.DOMModel.fromTarget(remoteObject.target());
+ if (!domModel) {
+ failedToRender();
+ return result;
}
+ domModel.pushObjectAsNodeToFrontend(remoteObject, onNodeResolved);
pfeldman 2017/03/01 02:37:44 isNode() helps!
chenwilliam 2017/03/02 00:06:55 Done.
/**
- * @this {Console.ConsoleViewMessage}
+ * @param {?SDK.DOMNode} node
*/
- function failedToRender() {
- result.appendChild(this._formatParameterAsObject(object, false));
+ function onNodeResolved(node) {
+ if (!node) {
+ failedToRender();
+ return result;
+ }
+ Common.Renderer.renderPromise(node).then(appendRenderer, failedToRender);
}
+ return result;
}
_formattedParameterAsNodeForTest() {

Powered by Google App Engine
This is Rietveld 408576698