| Index: Source/WebCore/inspector/front-end/ElementsPanel.js
|
| ===================================================================
|
| --- Source/WebCore/inspector/front-end/ElementsPanel.js (revision 88781)
|
| +++ Source/WebCore/inspector/front-end/ElementsPanel.js (working copy)
|
| @@ -113,13 +113,12 @@
|
|
|
| this._registerShortcuts();
|
|
|
| - WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.NodeInserted, this._nodeUpdated.bind(this, true));
|
| + WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.NodeInserted, this._nodeInserted, this);
|
| WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.NodeRemoved, this._nodeRemoved, this);
|
| WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.AttrModified, this._attributesUpdated, this);
|
| - WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.CharacterDataModified, this._nodeUpdated.bind(this, false));
|
| + WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.CharacterDataModified, this._characterDataModified, this);
|
| WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.DocumentUpdated, this._documentUpdated, this);
|
| WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.ChildNodeCountUpdated, this._childNodeCountUpdated, this);
|
| - WebInspector.domAgent.addEventListener(WebInspector.DOMAgent.Events.ShadowRootUpdated, this._nodeUpdated.bind(this, true));
|
|
|
| this.recentlyModifiedNodes = [];
|
| }
|
| @@ -432,27 +431,33 @@
|
| delete this._isEditingStyle;
|
| },
|
|
|
| - _nodeUpdated: function(hierarchyUpdated, event)
|
| + _attributesUpdated: function(event)
|
| {
|
| - var updatedNodeDetails = { node: event.data };
|
| - if (hierarchyUpdated)
|
| - updatedNodeDetails.parent = event.data.parentNode;
|
| - this.recentlyModifiedNodes.push(updatedNodeDetails);
|
| + this.recentlyModifiedNodes.push({node: event.data, updated: true});
|
| if (this.visible)
|
| this._updateModifiedNodesSoon();
|
| +
|
| + if (!this._isEditingStyle && event.data === this.focusedDOMNode)
|
| + this._styleSheetChanged();
|
| },
|
|
|
| - _attributesUpdated: function(event)
|
| + _characterDataModified: function(event)
|
| {
|
| - this._nodeUpdated(false, event);
|
| + this.recentlyModifiedNodes.push({node: event.data, updated: true});
|
| + if (this.visible)
|
| + this._updateModifiedNodesSoon();
|
| + },
|
|
|
| - if (!this._isEditingStyle && event.data === this.focusedDOMNode)
|
| - this._styleSheetChanged();
|
| + _nodeInserted: function(event)
|
| + {
|
| + this.recentlyModifiedNodes.push({node: event.data, parent: event.data.parentNode, inserted: true});
|
| + if (this.visible)
|
| + this._updateModifiedNodesSoon();
|
| },
|
|
|
| _nodeRemoved: function(event)
|
| {
|
| - this.recentlyModifiedNodes.push({node: event.data.node, parent: event.data.parent});
|
| + this.recentlyModifiedNodes.push({node: event.data.node, parent: event.data.parent, removed: true});
|
| if (this.visible)
|
| this._updateModifiedNodesSoon();
|
| },
|
| @@ -485,13 +490,16 @@
|
| var parent = this.recentlyModifiedNodes[i].parent;
|
| var node = this.recentlyModifiedNodes[i].node;
|
|
|
| - if (!parent) {
|
| + if (this.recentlyModifiedNodes[i].updated) {
|
| var nodeItem = this.treeOutline.findTreeElement(node);
|
| if (nodeItem)
|
| nodeItem.updateTitle();
|
| continue;
|
| }
|
|
|
| + if (!parent)
|
| + continue;
|
| +
|
| var parentNodeItem = this.treeOutline.findTreeElement(parent);
|
| if (parentNodeItem && !parentNodeItem.alreadyUpdatedChildren) {
|
| parentNodeItem.updateChildren();
|
| @@ -661,10 +669,6 @@
|
| crumbTitle = "<!DOCTYPE>";
|
| break;
|
|
|
| - case Node.SHADOW_ROOT_NODE:
|
| - crumbTitle = "(shadow)";
|
| - break;
|
| -
|
| default:
|
| crumbTitle = this.treeOutline.nodeNameToCorrectCase(current.nodeName());
|
| }
|
|
|