| Index: third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeElement.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeElement.js b/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeElement.js
|
| index 25853dbed1a8e951a9e22ec033cf3114cc5f6d58..51268fdc6ff9eda688fd0e6c54cf2511a4ca9e1f 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeElement.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/elements/ElementsTreeElement.js
|
| @@ -53,6 +53,7 @@ Elements.ElementsTreeElement = class extends UI.TreeElement {
|
| this._canAddAttributes = true;
|
| this._searchQuery = null;
|
| this._expandedChildrenLimit = Elements.ElementsTreeElement.InitialChildrenLimit;
|
| + this._decorationsThrottler = new Common.Throttler(100);
|
| }
|
|
|
| /**
|
| @@ -1086,10 +1087,21 @@ Elements.ElementsTreeElement = class extends UI.TreeElement {
|
| if (this.isClosingTag())
|
| return;
|
|
|
| - var node = this._node;
|
| - if (node.nodeType() !== Node.ELEMENT_NODE)
|
| + if (this._node.nodeType() !== Node.ELEMENT_NODE)
|
| return;
|
|
|
| + this._decorationsThrottler.schedule(this._updateDecorationsInternal.bind(this));
|
| + }
|
| +
|
| + /**
|
| + * @return {!Promise}
|
| + */
|
| + _updateDecorationsInternal() {
|
| + if (!this.treeOutline)
|
| + return Promise.resolve();
|
| +
|
| + var node = this._node;
|
| +
|
| if (!this.treeOutline._decoratorExtensions)
|
| /** @type {!Array.<!Runtime.Extension>} */
|
| this.treeOutline._decoratorExtensions = runtime.extensions(Components.DOMPresentationUtils.MarkerDecorator);
|
| @@ -1127,7 +1139,7 @@ Elements.ElementsTreeElement = class extends UI.TreeElement {
|
| (n === node ? decorations : descendantDecorations).push(decoration);
|
| }
|
|
|
| - Promise.all(promises).then(updateDecorationsUI.bind(this));
|
| + return Promise.all(promises).then(updateDecorationsUI.bind(this));
|
|
|
| /**
|
| * @this {Elements.ElementsTreeElement}
|
|
|