Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (242173 => 242174)
--- trunk/Source/WebInspectorUI/ChangeLog 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/ChangeLog 2019-02-27 23:54:42 UTC (rev 242174)
@@ -1,5 +1,74 @@
2019-02-27 Devin Rousso <[email protected]>
+ Web Inspector: Use Element.closest for internal code
+ https://bugs.webkit.org/show_bug.cgi?id=173747
+
+ Reviewed by Joseph Pecoraro.
+
+ Replace usage of added utility functions on the `Node` prototype with the built-in
+ `Element.prototype.closest` as it's more flexible and is capable of doing the same thing.
+
+ * UserInterface/Base/Utilities.js:
+ (Node.prototype.enclosingNodeOrSelfWithClass): Deleted.
+ (Node.prototype.enclosingNodeOrSelfWithNodeNameInArray): Deleted.
+ (Node.prototype.enclosingNodeOrSelfWithNodeName): Deleted.
+ * UserInterface/Base/Main.js:
+ (WI.handlePossibleLinkClick):
+ (WI._focusedContentBrowser):
+ * UserInterface/Views/CPUTimelineView.js:
+ (WI.CPUTimelineView.prototype._graphPositionForMouseEvent):
+ * UserInterface/Views/CompletionSuggestionsView.js:
+ (WI.CompletionSuggestionsView.prototype.set selectedIndex):
+ (WI.CompletionSuggestionsView.prototype.update):
+ (WI.CompletionSuggestionsView.prototype._itemClicked):
+ * UserInterface/Views/ConsoleGroup.js:
+ (WI.ConsoleGroup.prototype._titleClicked):
+ * UserInterface/Views/DOMTreeContentView.js:
+ (WI.DOMTreeContentView.prototype._mouseWasClicked):
+ * UserInterface/Views/DOMTreeElement.js:
+ (WI.DOMTreeElement.prototype._startEditingTarget):
+ (WI.DOMTreeElement.prototype._populateTagContextMenu):
+ * UserInterface/Views/DOMTreeOutline.js:
+ (WI.DOMTreeOutline.prototype.populateContextMenu):
+ * UserInterface/Views/DataGrid.js:
+ (WI.DataGrid.prototype._startEditing):
+ (WI.DataGrid.prototype._editingCancelled):
+ (WI.DataGrid.prototype.dataGridNodeFromNode):
+ (WI.DataGrid.prototype.dataGridNodeFromPoint):
+ (WI.DataGrid.prototype._headerCellClicked):
+ (WI.DataGrid.prototype._mouseoverColumnCollapser):
+ (WI.DataGrid.prototype._mouseoutColumnCollapser):
+ (WI.DataGrid.prototype._clickInColumnCollapser):
+ (WI.DataGrid.prototype._contextMenuInHeader):
+ (WI.DataGrid.prototype._contextMenuInDataTable):
+ * UserInterface/Views/DataGridNode.js:
+ (WI.DataGridNode.prototype.isEventWithinDisclosureTriangle):
+ * UserInterface/Views/LegacyTabBar.js:
+ (WI.LegacyTabBar.prototype._handleMouseDown):
+ (WI.LegacyTabBar.prototype._handleClick):
+ * UserInterface/Views/LogContentView.js:
+ (WI.LogContentView.prototype._handleContextMenuEvent):
+ (WI.LogContentView.prototype._mousedown):
+ (WI.LogContentView.prototype._targetInMessageCanBeSelected):
+ (WI.LogContentView.prototype._mousemove):
+ (WI.LogContentView.prototype._mouseup):
+ (WI.LogContentView.prototype._ondragstart):
+ * UserInterface/Views/NavigationBar.js:
+ (WI.NavigationBar.prototype._mouseDown):
+ (WI.NavigationBar.prototype._mouseMoved):
+ * UserInterface/Views/Popover.js:
+ (WI.Popover.prototype.handleEvent):
+ * UserInterface/Views/TabBar.js:
+ (WI.TabBar.prototype._handleMouseDown):
+ (WI.TabBar.prototype._handleClick):
+ * UserInterface/Views/Table.js:
+ (WI.Table.prototype._handleMouseDown):
+ (WI.Table.prototype._handleContextMenu):
+ * UserInterface/Views/TreeOutline.js:
+ (WI.TreeOutline.prototype.treeElementFromNode):
+
+2019-02-27 Devin Rousso <[email protected]>
+
Web Inspector: REGRESSION(r242118): Debugger: event breakpoints have no icon
https://bugs.webkit.org/show_bug.cgi?id=195119
Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Main.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Base/Main.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/Main.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -911,7 +911,7 @@
WI.handlePossibleLinkClick = function(event, frame, options = {})
{
- let anchorElement = event.target.enclosingNodeOrSelfWithNodeName("a");
+ let anchorElement = event.target.closest("a");
if (!anchorElement || !anchorElement.href)
return false;
@@ -2337,7 +2337,7 @@
WI._focusedContentBrowser = function()
{
if (this.currentFocusElement) {
- let contentBrowserElement = this.currentFocusElement.enclosingNodeOrSelfWithClass("content-browser");
+ let contentBrowserElement = this.currentFocusElement.closest(".content-browser");
if (contentBrowserElement && contentBrowserElement.__view && contentBrowserElement.__view instanceof WI.ContentBrowser)
return contentBrowserElement.__view;
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Utilities.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Base/Utilities.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/Utilities.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -180,44 +180,6 @@
}
});
-Object.defineProperty(Node.prototype, "enclosingNodeOrSelfWithClass",
-{
- value(className)
- {
- for (let node = this; node; node = node.parentElement) {
- if (node.nodeType === Node.ELEMENT_NODE && node.classList.contains(className))
- return node;
- }
-
- return null;
- }
-});
-
-Object.defineProperty(Node.prototype, "enclosingNodeOrSelfWithNodeNameInArray",
-{
- value(nodeNames)
- {
- let lowerCaseNodeNames = nodeNames.map((name) => name.toLowerCase());
-
- for (let node = this; node; node = node.parentElement) {
- for (let nodeName of lowerCaseNodeNames) {
- if (node.nodeName.toLowerCase() === nodeName)
- return node;
- }
- }
-
- return null;
- }
-});
-
-Object.defineProperty(Node.prototype, "enclosingNodeOrSelfWithNodeName",
-{
- value(nodeName)
- {
- return this.enclosingNodeOrSelfWithNodeNameInArray([nodeName]);
- }
-});
-
Object.defineProperty(Node.prototype, "traverseNextNode",
{
value(stayWithin)
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CPUTimelineView.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/CPUTimelineView.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/CPUTimelineView.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -720,7 +720,7 @@
_graphPositionForMouseEvent(event)
{
- let svgElement = event.target.enclosingNodeOrSelfWithNodeName("svg");
+ let svgElement = event.target.closest("svg");
if (!svgElement)
return NaN;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CompletionSuggestionsView.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/CompletionSuggestionsView.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/CompletionSuggestionsView.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -68,7 +68,7 @@
{
var selectedItemElement = this._selectedItemElement;
if (selectedItemElement)
- selectedItemElement.classList.remove(WI.CompletionSuggestionsView.SelectedItemStyleClassName);
+ selectedItemElement.classList.remove("selected");
this._selectedIndex = index;
@@ -76,7 +76,7 @@
if (!selectedItemElement)
return;
- selectedItemElement.classList.add(WI.CompletionSuggestionsView.SelectedItemStyleClassName);
+ selectedItemElement.classList.add("selected");
selectedItemElement.scrollIntoViewIfNeeded(false);
}
@@ -192,10 +192,9 @@
for (var i = 0; i < completions.length; ++i) {
var itemElement = document.createElement("div");
- itemElement.className = WI.CompletionSuggestionsView.ItemElementStyleClassName;
+ itemElement.classList.add("item");
+ itemElement.classList.toggle("selected", i === this._selectedIndex);
itemElement.textContent = completions[i];
- if (i === this._selectedIndex)
- itemElement.classList.add(WI.CompletionSuggestionsView.SelectedItemStyleClassName);
this._containerElement.appendChild(itemElement);
if (this._delegate && typeof this._delegate.completionSuggestionsViewCustomizeCompletionElement === "function")
@@ -238,7 +237,7 @@
if (event.button !== 0)
return;
- var itemElement = event.target.enclosingNodeOrSelfWithClass(WI.CompletionSuggestionsView.ItemElementStyleClassName);
+ let itemElement = event.target.closest(".item");
console.assert(itemElement);
if (!itemElement)
return;
@@ -256,6 +255,3 @@
this._moveIntervalIdentifier = null;
}
};
-
-WI.CompletionSuggestionsView.ItemElementStyleClassName = "item";
-WI.CompletionSuggestionsView.SelectedItemStyleClassName = "selected";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleGroup.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleGroup.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleGroup.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -89,9 +89,9 @@
_titleClicked(event)
{
- var groupTitleElement = event.target.enclosingNodeOrSelfWithClass("console-group-title");
+ var groupTitleElement = event.target.closest(".console-group-title");
if (groupTitleElement) {
- var groupElement = groupTitleElement.enclosingNodeOrSelfWithClass("console-group");
+ var groupElement = groupTitleElement.closest(".console-group");
if (groupElement)
if (groupElement.classList.contains("collapsed"))
groupElement.classList.remove("collapsed");
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -502,7 +502,7 @@
_mouseWasClicked(event)
{
- var anchorElement = event.target.enclosingNodeOrSelfWithNodeName("a");
+ var anchorElement = event.target.closest("a");
if (!anchorElement || !anchorElement.href)
return;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -696,15 +696,15 @@
if (this.representedObject.nodeType() !== Node.ELEMENT_NODE && this.representedObject.nodeType() !== Node.TEXT_NODE)
return false;
- var textNode = eventTarget.enclosingNodeOrSelfWithClass("html-text-node");
+ var textNode = eventTarget.closest(".html-text-node");
if (textNode)
return this._startEditingTextNode(textNode);
- var attribute = eventTarget.enclosingNodeOrSelfWithClass("html-attribute");
+ var attribute = eventTarget.closest(".html-attribute");
if (attribute)
return this._startEditingAttribute(attribute, eventTarget);
- var tagName = eventTarget.enclosingNodeOrSelfWithClass("html-tag-name");
+ var tagName = eventTarget.closest(".html-tag-name");
if (tagName)
return this._startEditingTagName(tagName);
@@ -738,7 +738,7 @@
subMenus.add.appendItem(WI.UIString("Attribute"), this._addNewAttribute.bind(this), !isNonShadowEditable);
- let attribute = event.target.enclosingNodeOrSelfWithClass("html-attribute");
+ let attribute = event.target.closest(".html-attribute");
subMenus.edit.appendItem(WI.UIString("Attribute"), this._startEditingAttribute.bind(this, attribute, event.target), !attribute || ! isNonShadowEditable);
let attributeName = null;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeOutline.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeOutline.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeOutline.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -244,10 +244,10 @@
populateContextMenu(contextMenu, event, treeElement)
{
- let tag = event.target.enclosingNodeOrSelfWithClass("html-tag");
- let textNode = event.target.enclosingNodeOrSelfWithClass("html-text-node");
- let commentNode = event.target.enclosingNodeOrSelfWithClass("html-comment");
- let pseudoElement = event.target.enclosingNodeOrSelfWithClass("html-pseudo-element");
+ let tag = event.target.closest(".html-tag");
+ let textNode = event.target.closest(".html-text-node");
+ let commentNode = event.target.closest(".html-comment");
+ let pseudoElement = event.target.closest(".html-pseudo-element");
let subMenus = {
add: new WI.ContextSubMenuItem(contextMenu, WI.UIString("Add")),
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DataGrid.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DataGrid.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DataGrid.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -524,7 +524,7 @@
_startEditing(target)
{
- var element = target.enclosingNodeOrSelfWithNodeName("td");
+ var element = target.closest("td");
if (!element)
return;
@@ -605,7 +605,7 @@
_editingCancelled(element)
{
- console.assert(this._editingNode.element === element.enclosingNodeOrSelfWithNodeName("tr"));
+ console.assert(this._editingNode.element === element.closest("tr"));
this._editingNode.refresh();
@@ -1438,7 +1438,7 @@
dataGridNodeFromNode(target)
{
- var rowElement = target.enclosingNodeOrSelfWithNodeName("tr");
+ var rowElement = target.closest("tr");
return rowElement && rowElement._dataGridNode;
}
@@ -1445,13 +1445,13 @@
dataGridNodeFromPoint(x, y)
{
var node = this._dataTableElement.ownerDocument.elementFromPoint(x, y);
- var rowElement = node.enclosingNodeOrSelfWithNodeName("tr");
+ var rowElement = node.closest("tr");
return rowElement && rowElement._dataGridNode;
}
_headerCellClicked(event)
{
- let cell = event.target.enclosingNodeOrSelfWithNodeName("th");
+ let cell = event.target.closest("th");
if (!cell || !cell.columnIdentifier || !cell.classList.contains(WI.DataGrid.SortableColumnStyleClassName))
return;
@@ -1461,7 +1461,7 @@
_mouseoverColumnCollapser(event)
{
- var cell = event.target.enclosingNodeOrSelfWithNodeName("th");
+ var cell = event.target.closest("th");
if (!cell || !cell.collapsesGroup)
return;
@@ -1470,7 +1470,7 @@
_mouseoutColumnCollapser(event)
{
- var cell = event.target.enclosingNodeOrSelfWithNodeName("th");
+ var cell = event.target.closest("th");
if (!cell || !cell.collapsesGroup)
return;
@@ -1479,7 +1479,7 @@
_clickInColumnCollapser(event)
{
- var cell = event.target.enclosingNodeOrSelfWithNodeName("th");
+ var cell = event.target.closest("th");
if (!cell || !cell.collapsesGroup)
return;
@@ -1578,7 +1578,7 @@
if (this._hasCopyableData())
contextMenu.appendItem(WI.UIString("Copy Table"), this._copyTable.bind(this));
- let headerCellElement = event.target.enclosingNodeOrSelfWithNodeName("th");
+ let headerCellElement = event.target.closest("th");
if (!headerCellElement)
return;
@@ -1647,7 +1647,7 @@
if (gridNode === this.placeholderNode)
contextMenu.appendItem(WI.UIString("Add New"), this._startEditing.bind(this, event.target));
else {
- let element = event.target.enclosingNodeOrSelfWithNodeName("td");
+ let element = event.target.closest("td");
let columnIdentifier = element.__columnIdentifier;
let columnTitle = this.dataGrid.columns.get(columnIdentifier)["title"];
contextMenu.appendItem(WI.UIString("Edit \u201C%s\u201D").format(columnTitle), this._startEditing.bind(this, event.target));
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DataGridNode.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DataGridNode.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DataGridNode.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -650,7 +650,7 @@
if (!this.hasChildren)
return false;
- let cell = event.target.enclosingNodeOrSelfWithNodeName("td");
+ let cell = event.target.closest("td");
if (!cell || !cell.classList.contains("disclosure"))
return false;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/LegacyTabBar.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/LegacyTabBar.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/LegacyTabBar.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -590,7 +590,7 @@
if (event.button !== 0 || event.ctrlKey)
return;
- let itemElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.StyleClassName);
+ let itemElement = event.target.closest("." + WI.TabBarItem.StyleClassName);
if (!itemElement)
return;
@@ -616,7 +616,7 @@
return;
}
- let closeButtonElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.CloseButtonStyleClassName);
+ let closeButtonElement = event.target.closest("." + WI.TabBarItem.CloseButtonStyleClassName);
if (closeButtonElement)
return;
@@ -649,7 +649,7 @@
_handleClick(event)
{
- var itemElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.StyleClassName);
+ var itemElement = event.target.closest("." + WI.TabBarItem.StyleClassName);
if (!itemElement)
return;
@@ -662,7 +662,7 @@
const clickedMiddleButton = event.button === 1;
- var closeButtonElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.CloseButtonStyleClassName);
+ var closeButtonElement = event.target.closest("." + WI.TabBarItem.CloseButtonStyleClassName);
if (closeButtonElement || clickedMiddleButton) {
// Disallow closing the default tab if it is the only tab.
if (tabBarItem.isDefaultTab && this.element.classList.contains("single-tab"))
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -472,7 +472,7 @@
this._mouseup(event);
// We don't want to show the custom menu for links in the console.
- if (event.target.enclosingNodeOrSelfWithNodeName("a"))
+ if (event.target.closest("a"))
return;
let contextMenu = WI.ContextMenu.createFromEvent(event);
@@ -509,7 +509,7 @@
return;
}
- this._mouseDownWrapper = event.target.enclosingNodeOrSelfWithClass(WI.LogContentView.ItemWrapperStyleClassName);
+ this._mouseDownWrapper = event.target.closest("." + WI.LogContentView.ItemWrapperStyleClassName);
this._mouseDownShiftKey = event.shiftKey;
this._mouseDownCommandKey = event.metaKey;
this._mouseMoveIsRowSelection = false;
@@ -520,7 +520,7 @@
_targetInMessageCanBeSelected(target, message)
{
- if (target.enclosingNodeOrSelfWithNodeName("a"))
+ if (target.closest("a"))
return false;
return true;
}
@@ -528,12 +528,12 @@
_mousemove(event)
{
var selection = window.getSelection();
- var wrapper = event.target.enclosingNodeOrSelfWithClass(WI.LogContentView.ItemWrapperStyleClassName);
+ var wrapper = event.target.closest("." + WI.LogContentView.ItemWrapperStyleClassName);
if (!wrapper) {
// No wrapper under the mouse, so look at the selection to try and find one.
if (!selection.isCollapsed)
- wrapper = selection.focusNode.enclosingNodeOrSelfWithClass(WI.LogContentView.ItemWrapperStyleClassName);
+ wrapper = selection.focusNode.closest("." + WI.LogContentView.ItemWrapperStyleClassName);
if (!wrapper) {
selection.removeAllRanges();
@@ -570,7 +570,7 @@
window.removeEventListener("mouseup", this);
var selection = window.getSelection();
- var wrapper = event.target.enclosingNodeOrSelfWithClass(WI.LogContentView.ItemWrapperStyleClassName);
+ var wrapper = event.target.closest("." + WI.LogContentView.ItemWrapperStyleClassName);
if (wrapper && (selection.isCollapsed || event.shiftKey)) {
selection.removeAllRanges();
@@ -598,7 +598,7 @@
_ondragstart(event)
{
- if (event.target.enclosingNodeOrSelfWithClass(WI.DOMTreeOutline.StyleClassName)) {
+ if (event.target.closest("." + WI.DOMTreeOutline.StyleClassName)) {
event.stopPropagation();
event.preventDefault();
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NavigationBar.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/NavigationBar.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NavigationBar.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -295,7 +295,7 @@
if (!this._focused)
this.element.removeAttribute("tabindex");
- var itemElement = event.target.enclosingNodeOrSelfWithClass(WI.RadioButtonNavigationItem.StyleClassName);
+ var itemElement = event.target.closest("." + WI.RadioButtonNavigationItem.StyleClassName);
if (!itemElement || !itemElement.navigationItem)
return;
@@ -327,7 +327,7 @@
event.preventDefault();
event.stopPropagation();
- var itemElement = event.target.enclosingNodeOrSelfWithClass(WI.RadioButtonNavigationItem.StyleClassName);
+ var itemElement = event.target.closest("." + WI.RadioButtonNavigationItem.StyleClassName);
if (!itemElement || !itemElement.navigationItem || !this.element.contains(itemElement)) {
// Find the element that is at the X position of the mouse, even when the mouse is no longer
// vertically in the navigation bar.
@@ -335,7 +335,7 @@
if (!element)
return;
- itemElement = element.enclosingNodeOrSelfWithClass(WI.RadioButtonNavigationItem.StyleClassName);
+ itemElement = element.closest("." + WI.RadioButtonNavigationItem.StyleClassName);
if (!itemElement || !itemElement.navigationItem || !this.element.contains(itemElement))
return;
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/Popover.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/Popover.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/Popover.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -171,7 +171,7 @@
switch (event.type) {
case "mousedown":
case "scroll":
- if (!this._element.contains(event.target) && !event.target.enclosingNodeOrSelfWithClass(WI.Popover.IgnoreAutoDismissClassName)
+ if (!this._element.contains(event.target) && !event.target.closest("." + WI.Popover.IgnoreAutoDismissClassName)
&& !event[WI.Popover.EventPreventDismissSymbol]) {
this.dismiss();
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TabBar.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/TabBar.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TabBar.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -558,7 +558,7 @@
if (event.button !== 0 || event.ctrlKey)
return;
- let itemElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.StyleClassName);
+ let itemElement = event.target.closest("." + WI.TabBarItem.StyleClassName);
if (!itemElement)
return;
@@ -581,7 +581,7 @@
return;
}
- let closeButtonElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.CloseButtonStyleClassName);
+ let closeButtonElement = event.target.closest("." + WI.TabBarItem.CloseButtonStyleClassName);
if (closeButtonElement)
return;
@@ -614,7 +614,7 @@
_handleClick(event)
{
- var itemElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.StyleClassName);
+ var itemElement = event.target.closest("." + WI.TabBarItem.StyleClassName);
if (!itemElement)
return;
@@ -627,7 +627,7 @@
const clickedMiddleButton = event.button === 1;
- var closeButtonElement = event.target.enclosingNodeOrSelfWithClass(WI.TabBarItem.CloseButtonStyleClassName);
+ var closeButtonElement = event.target.closest("." + WI.TabBarItem.CloseButtonStyleClassName);
if (closeButtonElement || clickedMiddleButton) {
// Disallow closing the only tab.
if (this.element.classList.contains("single-tab"))
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/Table.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/Table.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/Table.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -1299,7 +1299,7 @@
_handleMouseDown(event)
{
- let cell = event.target.enclosingNodeOrSelfWithClass("cell");
+ let cell = event.target.closest(".cell");
if (!cell)
return;
@@ -1323,7 +1323,7 @@
_handleContextMenu(event)
{
- let cell = event.target.enclosingNodeOrSelfWithClass("cell");
+ let cell = event.target.closest(".cell");
if (!cell)
return;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TreeOutline.js (242173 => 242174)
--- trunk/Source/WebInspectorUI/UserInterface/Views/TreeOutline.js 2019-02-27 23:54:02 UTC (rev 242173)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TreeOutline.js 2019-02-27 23:54:42 UTC (rev 242174)
@@ -574,7 +574,7 @@
treeElementFromNode(node)
{
- var listNode = node.enclosingNodeOrSelfWithNodeNameInArray(["ol", "li"]);
+ var listNode = node.closest("ol, li");
if (listNode)
return listNode.parentTreeElement || listNode.treeElement;
return null;