| Index: third_party/WebKit/Source/devtools/front_end/ui/ListControl.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/ui/ListControl.js b/third_party/WebKit/Source/devtools/front_end/ui/ListControl.js
|
| index f05dd175e1590738a337c1778b898641b80a4dbc..532a4d8d9110b10953685fa6320e036eb3937a04 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/ui/ListControl.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/ui/ListControl.js
|
| @@ -200,10 +200,15 @@ UI.ListControl = class {
|
| }
|
|
|
| /**
|
| - * @param {!Element} element
|
| + * @param {?Node} node
|
| * @return {?T}
|
| */
|
| - itemForElement(element) {
|
| + itemForNode(node) {
|
| + while (node && node.parentNodeOrShadowHost() !== this.element)
|
| + node = node.parentNodeOrShadowHost();
|
| + if (!node)
|
| + return null;
|
| + var element = /** @type {!Element} */ (node);
|
| var index = this._items.findIndex(item => this._itemToElement.get(item) === element);
|
| return index !== -1 ? this._items[index] : null;
|
| }
|
| @@ -344,14 +349,8 @@ UI.ListControl = class {
|
| * @param {!Event} event
|
| */
|
| _onClick(event) {
|
| - var node = event.target;
|
| - while (node && node.parentNodeOrShadowHost() !== this.element)
|
| - node = node.parentNodeOrShadowHost();
|
| - if (!node)
|
| - return;
|
| - var element = /** @type {!Element} */ (node);
|
| - var item = this.itemForElement(element);
|
| - if (item)
|
| + var item = this.itemForNode(/** @type {?Node} */ (event.target));
|
| + if (item && this._delegate.isItemSelectable(item))
|
| this.selectItem(item);
|
| }
|
|
|
|
|