Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e4fbf2752d9a4722e80e3a51b57ae7b79fa955d5
      
https://github.com/WebKit/WebKit/commit/e4fbf2752d9a4722e80e3a51b57ae7b79fa955d5
  Author: Devin Rousso <[email protected]>
  Date:   2026-10-05 (Mon, 05 Oct 2026)

  Changed paths:
    M Source/WebInspectorUI/UserInterface/Base/Main.js
    M Source/WebInspectorUI/UserInterface/Main.html
    M Source/WebInspectorUI/UserInterface/Views/CallFrameView.js
    M Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js
    M Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js
    M Source/WebInspectorUI/UserInterface/Views/ResourceDetailsSidebarPanel.js
    M Source/WebInspectorUI/UserInterface/Views/ResourceHeadersContentView.css
    M Source/WebInspectorUI/UserInterface/Views/ResourceHeadersContentView.js
    A Source/WebInspectorUI/UserInterface/Views/StackTracePopover.css
    A Source/WebInspectorUI/UserInterface/Views/StackTracePopover.js

  Log Message:
  -----------
  Web Inspector: Implement stacktrace popovers
https://bugs.webkit.org/show_bug.cgi?id=143862
<rdar://problem/20582649>

Reviewed by Timothy Hatcher.

Previously, lots of places where a full `WI.StackTrace` was captured only 
showed the top `WI.CallFrame`.

This meant that while developers could see the immediate location of the 
activity (e.g. where a `console.log()` happened),
they couldn't see how execution actually reached that point (e.g. what 
functions led to the `console.log()` call).

* Source/WebInspectorUI/UserInterface/Base/Main.js:
(WI.linkifyElement):
* Source/WebInspectorUI/UserInterface/Views/StackTracePopover.js: Added.
(WI.StackTracePopover):
(WI.StackTracePopover.present):
(WI.StackTracePopover.prototype.show):
(WI.StackTracePopover.prototype._handleTreeOutlineElementClicked):
* Source/WebInspectorUI/UserInterface/Views/StackTracePopover.css: Added.
(.stack-trace-popover):
Instead of jumping to the location on click, show a `WI.Popover` with the 
`WI.StackTrace`.

* Source/WebInspectorUI/UserInterface/Views/CallFrameView.js:
(WI.CallFrameView):
* Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js:
(WI.ConsoleMessageView.prototype._appendLocationLink):
* Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView.prototype._populateInitiatorCell):
* Source/WebInspectorUI/UserInterface/Views/ResourceDetailsSidebarPanel.js:
(WI.ResourceDetailsSidebarPanel.prototype._refreshRelatedResourcesSection):
Pass along the `WI.StackTrace` (if it exists) when calling `WI.linkifyElement`.

* Source/WebInspectorUI/UserInterface/Views/ResourceHeadersContentView.js:
(WI.ResourceHeadersContentView):
(WI.ResourceHeadersContentView.prototype._refreshSummarySection):
(WI.ResourceHeadersContentView.prototype._presentPopoverBelowCallStackElement): 
Deleted.
* Source/WebInspectorUI/UserInterface/Views/ResourceHeadersContentView.css:
(.resource-headers .call-stack): Deleted.
(.resource-headers .call-stack:hover): Deleted.
(@media (prefers-color-scheme: dark) .resource-headers .call-stack): Deleted.
Remove special call stack popover handling in favor of the universal 
`WI.StackTracePopover` via `WI.linkifyElement`.

* Source/WebInspectorUI/UserInterface/Main.html:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to