Chromium Code Reviews| 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 9d89be4e5929e2a7bd95748ade3003659a99d6af..2f998cf80a6312581918497ac0a4694ac1810723 100644 |
| --- a/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js |
| +++ b/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js |
| @@ -486,7 +486,7 @@ Console.ConsoleViewMessage = class { |
| element = this._formatParameterAsObject(output, includePreview); |
| break; |
| case 'node': |
| - element = this._formatParameterAsNode(output); |
| + element = output.isNode() ? this._formatParameterAsNode(output) : this._formatParameterAsObject(output, false); |
| break; |
| case 'string': |
| element = this._formatParameterAsString(output); |
| @@ -598,29 +598,30 @@ 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) { |
| - result.appendChild(rendererElement); |
| - this._formattedParameterAsNodeForTest(); |
| - } |
| + var domModel = SDK.DOMModel.fromTarget(remoteObject.runtimeModel().target()); |
| + domModel.pushObjectAsNodeToFrontend(remoteObject).then(onNodeResolved.bind(this)); |
|
dgozman
2017/03/21 23:00:49
if (!domModel) return result;
chenwilliam
2017/03/22 00:30:38
Done.
|
| /** |
| + * @param {?SDK.DOMNode} node |
| * @this {Console.ConsoleViewMessage} |
| */ |
| - function failedToRender() { |
| - result.appendChild(this._formatParameterAsObject(object, false)); |
| + function onNodeResolved(node) { |
|
dgozman
2017/03/21 23:00:49
Make it an arrow function?
chenwilliam
2017/03/22 00:30:38
Done.
|
| + if (!node) { |
| + result.appendChild(this._formatParameterAsObject(remoteObject, false)); |
|
dgozman
2017/03/21 23:00:49
Just return here.
chenwilliam
2017/03/22 00:30:38
Done.
|
| + return result; |
| + } |
| + Common.Renderer.renderPromise(node).then(rendererElement => { |
| + result.appendChild(rendererElement); |
| + this._formattedParameterAsNodeForTest(); |
| + }); |
| } |
| + return result; |
| } |
| _formattedParameterAsNodeForTest() { |