| 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 567fd3aa1d307f225e5339421f31985df2fef2c6..9a54ade3e0a73b8ea8f88d9948dfc32f2cea9489 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js
|
| @@ -153,7 +153,7 @@ Console.ConsoleViewMessage = class {
|
| }
|
|
|
| if (columnRendered) {
|
| - var cellElement = this._renderPropertyPreviewOrAccessor(table, [rowProperty, cellProperty]);
|
| + var cellElement = this._previewFormatter.renderPropertyPreviewOrAccessor([rowProperty, cellProperty], table);
|
| cellElement.classList.add('console-message-nowrap-below');
|
| rowValue[cellProperty.name] = cellElement;
|
| }
|
| @@ -522,7 +522,7 @@ Console.ConsoleViewMessage = class {
|
| var titleElement = createElement('span');
|
| if (includePreview && obj.preview) {
|
| titleElement.classList.add('console-object-preview');
|
| - this._previewFormatter.appendObjectPreview(titleElement, obj.preview);
|
| + this._previewFormatter.appendObjectPreview(titleElement, obj.preview, obj);
|
| } else if (obj.type === 'function') {
|
| Components.ObjectPropertiesSection.formatObjectAsFunction(obj, titleElement, false);
|
| titleElement.classList.add('object-value-function');
|
| @@ -574,19 +574,6 @@ Console.ConsoleViewMessage = class {
|
| }
|
|
|
| /**
|
| - * @param {?SDK.RemoteObject} object
|
| - * @param {!Array.<!Protocol.Runtime.PropertyPreview>} propertyPath
|
| - * @return {!Element}
|
| - */
|
| - _renderPropertyPreviewOrAccessor(object, propertyPath) {
|
| - var property = propertyPath.peekLast();
|
| - if (property.type === 'accessor')
|
| - return this._formatAsAccessorProperty(object, propertyPath.map(property => property.name), false);
|
| - return this._previewFormatter.renderPropertyPreview(
|
| - property.type, /** @type {string} */ (property.subtype), property.value);
|
| - }
|
| -
|
| - /**
|
| * @param {!SDK.RemoteObject} object
|
| * @return {!Element}
|
| */
|
| @@ -646,10 +633,13 @@ Console.ConsoleViewMessage = class {
|
| var name = property.name;
|
| if (isNaN(name))
|
| continue;
|
| - if (property.getter)
|
| - elements[name] = this._formatAsAccessorProperty(array, [name], true);
|
| - else if (property.value)
|
| - elements[name] = this._formatAsArrayEntry(property.value);
|
| + var formatter = this._previewFormatter;
|
| + if (property.getter) {
|
| + elements[name] = formatter.formatAsAccessorProperty([name], array);
|
| + } else if (property.value) {
|
| + var output = property.value;
|
| + elements[name] = formatter.renderPropertyPreview(output.type, output.subtype, output.description);
|
| + }
|
| }
|
|
|
| titleElement.createTextChild('[');
|
| @@ -716,58 +706,6 @@ Console.ConsoleViewMessage = class {
|
| }
|
|
|
| /**
|
| - * @param {!SDK.RemoteObject} output
|
| - * @return {!Element}
|
| - */
|
| - _formatAsArrayEntry(output) {
|
| - return this._previewFormatter.renderPropertyPreview(output.type, output.subtype, output.description);
|
| - }
|
| -
|
| - /**
|
| - * @param {?SDK.RemoteObject} object
|
| - * @param {!Array.<string>} propertyPath
|
| - * @param {boolean} isArrayEntry
|
| - * @return {!Element}
|
| - */
|
| - _formatAsAccessorProperty(object, propertyPath, isArrayEntry) {
|
| - var rootElement = Components.ObjectPropertyTreeElement.createRemoteObjectAccessorPropertySpan(
|
| - object, propertyPath, onInvokeGetterClick.bind(this));
|
| -
|
| - /**
|
| - * @param {?SDK.RemoteObject} result
|
| - * @param {boolean=} wasThrown
|
| - * @this {Console.ConsoleViewMessage}
|
| - */
|
| - function onInvokeGetterClick(result, wasThrown) {
|
| - if (!result)
|
| - return;
|
| - rootElement.removeChildren();
|
| - if (wasThrown) {
|
| - var element = rootElement.createChild('span');
|
| - element.textContent = Common.UIString('<exception>');
|
| - element.title = /** @type {string} */ (result.description);
|
| - } else if (isArrayEntry) {
|
| - rootElement.appendChild(this._formatAsArrayEntry(result));
|
| - } else {
|
| - // Make a PropertyPreview from the RemoteObject similar to the backend logic.
|
| - const maxLength = 100;
|
| - var type = result.type;
|
| - var subtype = result.subtype;
|
| - var description = '';
|
| - if (type !== 'function' && result.description) {
|
| - if (type === 'string' || subtype === 'regexp')
|
| - description = result.description.trimMiddle(maxLength);
|
| - else
|
| - description = result.description.trimEnd(maxLength);
|
| - }
|
| - rootElement.appendChild(this._previewFormatter.renderPropertyPreview(type, subtype, description));
|
| - }
|
| - }
|
| -
|
| - return rootElement;
|
| - }
|
| -
|
| - /**
|
| * @param {string} format
|
| * @param {!Array.<!SDK.RemoteObject>} parameters
|
| * @param {!Element} formattedResult
|
|
|