Title: [242820] trunk/Source/WebInspectorUI
- Revision
- 242820
- Author
- [email protected]
- Date
- 2019-03-12 13:05:52 -0700 (Tue, 12 Mar 2019)
Log Message
Web Inspector: Elements: provide node context menu items for event listeners sorted by node
https://bugs.webkit.org/show_bug.cgi?id=195633
Reviewed by Matt Baker.
* UserInterface/Base/DOMUtilities.js:
(WI.linkifyNodeReferenceElement):
(WI.bindInteractionsForNodeToElement): Added.
Split logic for adding event listeners into a separate function so it can be used on
existing DOM without modifying it.
* UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
(WI.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.generateGroupsByNode):
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (242819 => 242820)
--- trunk/Source/WebInspectorUI/ChangeLog 2019-03-12 19:37:38 UTC (rev 242819)
+++ trunk/Source/WebInspectorUI/ChangeLog 2019-03-12 20:05:52 UTC (rev 242820)
@@ -1,5 +1,21 @@
2019-03-12 Devin Rousso <[email protected]>
+ Web Inspector: Elements: provide node context menu items for event listeners sorted by node
+ https://bugs.webkit.org/show_bug.cgi?id=195633
+
+ Reviewed by Matt Baker.
+
+ * UserInterface/Base/DOMUtilities.js:
+ (WI.linkifyNodeReferenceElement):
+ (WI.bindInteractionsForNodeToElement): Added.
+ Split logic for adding event listeners into a separate function so it can be used on
+ existing DOM without modifying it.
+
+ * UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
+ (WI.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.generateGroupsByNode):
+
+2019-03-12 Devin Rousso <[email protected]>
+
Web Inspector: DOM Debugger: remove left padding when the last DOM breakpoint is removed
https://bugs.webkit.org/show_bug.cgi?id=195522
Modified: trunk/Source/WebInspectorUI/UserInterface/Base/DOMUtilities.js (242819 => 242820)
--- trunk/Source/WebInspectorUI/UserInterface/Base/DOMUtilities.js 2019-03-12 19:37:38 UTC (rev 242819)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/DOMUtilities.js 2019-03-12 20:05:52 UTC (rev 242820)
@@ -77,15 +77,30 @@
if ((nodeType !== Node.DOCUMENT_NODE || node.parentNode) && nodeType !== Node.TEXT_NODE)
element.classList.add("node-link");
- element.addEventListener("click", WI.domManager.inspectElement.bind(WI.domManager, node.id));
- element.addEventListener("mouseover", WI.domManager.highlightDOMNode.bind(WI.domManager, node.id, "all"));
- element.addEventListener("mouseout", WI.domManager.hideDOMNodeHighlight.bind(WI.domManager));
+ WI.bindInteractionsForNodeToElement(node, element, options);
+
+ return element;
+};
+
+WI.bindInteractionsForNodeToElement = function(node, element, options = {}) {
+ if (!options.ignoreClick) {
+ element.addEventListener("click", (event) => {
+ WI.domManager.inspectElement(node.id);
+ });
+ }
+
+ element.addEventListener("mouseover", (event) => {
+ WI.domManager.highlightDOMNode(node.id, "all");
+ });
+
+ element.addEventListener("mouseout", (event) => {
+ WI.domManager.hideDOMNodeHighlight();
+ });
+
element.addEventListener("contextmenu", (event) => {
let contextMenu = WI.ContextMenu.createFromEvent(event);
WI.appendContextMenuItemsForDOMNode(contextMenu, node, options);
});
-
- return element;
};
function createSVGElement(tagName)
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DOMNodeDetailsSidebarPanel.js (242819 => 242820)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DOMNodeDetailsSidebarPanel.js 2019-03-12 19:37:38 UTC (rev 242819)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DOMNodeDetailsSidebarPanel.js 2019-03-12 20:05:52 UTC (rev 242820)
@@ -393,17 +393,10 @@
if (!eventListenersForNode)
continue;
- let nodeId = currentNode.id;
-
eventListenersForNode.sort((a, b) => a.type.toLowerCase().extendedLocaleCompare(b.type.toLowerCase()));
let section = createEventListenerSection(currentNode.displayName, eventListenersForNode, {hideNode: true});
- section.titleElement.addEventListener("mouseover", (event) => {
- WI.domManager.highlightDOMNode(nodeId, "all");
- });
- section.titleElement.addEventListener("mouseout", (event) => {
- WI.domManager.hideDOMNodeHighlight();
- });
+ WI.bindInteractionsForNodeToElement(currentNode, section.titleElement, {ignoreClick: true});
rows.push(section);
} while (currentNode = currentNode.parentNode);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes