[webkit-changes] [WebKit/WebKit] 93e932: Web Inspector: “Inspect Element” doesn’t reveal el...

Patrick Angle noreply at github.com
Wed Jan 11 14:24:13 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 93e932263fc0a5a9483af9d6e0ba2199365be54d
      https://github.com/WebKit/WebKit/commit/93e932263fc0a5a9483af9d6e0ba2199365be54d
  Author: Patrick Angle <pangle at apple.com>
  Date:   2023-01-11 (Wed, 11 Jan 2023)

  Changed paths:
    M Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js
    M Source/WebInspectorUI/UserInterface/Views/DOMTreeOutline.js
    M Source/WebInspectorUI/UserInterface/Views/TreeElement.js

  Log Message:
  -----------
  Web Inspector: “Inspect Element” doesn’t reveal element in DOM tree if the element is hidden behind the "Show All Nodes" button
https://bugs.webkit.org/show_bug.cgi?id=250430
rdar://102669246

Reviewed by Devin Rousso.

Revealing a TreeElement currently makes sure to traverse up through parent elements to expand each element to make sure
the element is visible. This doesn't necessilary work for DOMTreeElements, though, since they may additionally have
hidden elements behind a "Show All Nodes" button. This means we need to provide each parent element an opportunity to
fill in these hidden elements so that the entire chain of tree elements is actually loaded, otherwise we won't actually
reveal the element we wanted to.

* Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js:
(WI.DOMTreeElement.prototype.reveal):
- Tree elements should call to each ancestor to make sure the entire chain of elements is actually revealed by providing
the parent elements an opportunity to fill in missing elements that they are not currently displaying.

(WI.DOMTreeElement.prototype.onexpand):
* Source/WebInspectorUI/UserInterface/Views/DOMTreeOutline.js:
(WI.DOMTreeOutline.prototype._onmousemove):
- Related fixes: The element will not always be a DOMTreeElement (namely the button for showing more elements).

* Source/WebInspectorUI/UserInterface/Views/TreeElement.js:
(WI.TreeElement.prototype.reveal):
- Provide a way for to bypass expanding the ancestor tree. This is used by DOMTreeElement which overrides this method,
and expands the tree itself before calling here.

Canonical link: https://commits.webkit.org/258805@main




More information about the webkit-changes mailing list