Title: [214861] trunk/Source/WebInspectorUI
- Revision
- 214861
- Author
- mattba...@apple.com
- Date
- 2017-04-03 20:19:09 -0700 (Mon, 03 Apr 2017)
Log Message
Web Inspector: Show additional pause reason details for DOM "subtree modified" breakpoint
https://bugs.webkit.org/show_bug.cgi?id=169479
Reviewed by Timothy Hatcher.
* Localizations/en.lproj/localizedStrings.js:
New Pause Reason UI strings.
* UserInterface/Views/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection):
Include a link for the target node when breaking for subtree modifications.
This is either the parent of a node being inserted, or a node that is
being removed.
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (214860 => 214861)
--- trunk/Source/WebInspectorUI/ChangeLog 2017-04-04 01:22:41 UTC (rev 214860)
+++ trunk/Source/WebInspectorUI/ChangeLog 2017-04-04 03:19:09 UTC (rev 214861)
@@ -1,3 +1,19 @@
+2017-04-03 Matt Baker <mattba...@apple.com>
+
+ Web Inspector: Show additional pause reason details for DOM "subtree modified" breakpoint
+ https://bugs.webkit.org/show_bug.cgi?id=169479
+
+ Reviewed by Timothy Hatcher.
+
+ * Localizations/en.lproj/localizedStrings.js:
+ New Pause Reason UI strings.
+
+ * UserInterface/Views/DebuggerSidebarPanel.js:
+ (WebInspector.DebuggerSidebarPanel.prototype._updatePauseReasonSection):
+ Include a link for the target node when breaking for subtree modifications.
+ This is either the parent of a node being inserted, or a node that is
+ being removed.
+
2017-04-03 Devin Rousso <web...@devinrousso.com>
Web Inspector: showing the Find banner doesn't immediately focus it
Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (214860 => 214861)
--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-04-04 01:22:41 UTC (rev 214860)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-04-04 03:19:09 UTC (rev 214861)
@@ -153,6 +153,7 @@
localizedStrings["Charge ā%sā to Callers"] = "Charge ā%sā to Callers";
localizedStrings["Checked"] = "Checked";
localizedStrings["Child Layers"] = "Child Layers";
+localizedStrings["Child added to "] = "Child added to ";
localizedStrings["Children"] = "Children";
localizedStrings["Classes"] = "Classes";
localizedStrings["Clear"] = "Clear";
@@ -659,6 +660,7 @@
localizedStrings["Remove probe"] = "Remove probe";
localizedStrings["Remove selected item"] = "Remove selected item";
localizedStrings["Remove this breakpoint action"] = "Remove this breakpoint action";
+localizedStrings["Removed descendant "] = "Removed descendant ";
localizedStrings["Rendering Frames"] = "Rendering Frames";
localizedStrings["Repeat"] = "Repeat";
localizedStrings["Repeating Linear Gradient"] = "Repeating Linear Gradient";
@@ -856,7 +858,6 @@
localizedStrings["Transform"] = "Transform";
localizedStrings["Transition"] = "Transition";
localizedStrings["Triggered Breakpoint"] = "Triggered Breakpoint";
-localizedStrings["Triggered DOM Breakpoint"] = "Triggered DOM Breakpoint";
localizedStrings["Triggered XHR Breakpoint"] = "Triggered XHR Breakpoint";
localizedStrings["True"] = "True";
localizedStrings["Type"] = "Type";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js (214860 => 214861)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js 2017-04-04 01:22:41 UTC (rev 214860)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js 2017-04-04 03:19:09 UTC (rev 214861)
@@ -974,14 +974,43 @@
if (!domBreakpoint)
return;
- this._pauseReasonTreeOutline = this.createContentTreeOutline(true, true);
+ const suppressFiltering = true;
+ this._pauseReasonTreeOutline = this.createContentTreeOutline(suppressFiltering);
- let domBreakpointTreeElement = new WebInspector.DOMBreakpointTreeElement(domBreakpoint, WebInspector.DebuggerSidebarPanel.PausedBreakpointIconStyleClassName, WebInspector.UIString("Triggered DOM Breakpoint"));
- let domBreakpointDetailsSection = new WebInspector.DetailsSectionRow;
+ let type = WebInspector.DOMBreakpointTreeElement.displayNameForType(domBreakpoint.type);
+ let domBreakpointTreeElement = new WebInspector.DOMBreakpointTreeElement(domBreakpoint, WebInspector.DebuggerSidebarPanel.PausedBreakpointIconStyleClassName, type);
+ let domBreakpointRow = new WebInspector.DetailsSectionRow;
this._pauseReasonTreeOutline.appendChild(domBreakpointTreeElement);
- domBreakpointDetailsSection.element.appendChild(this._pauseReasonTreeOutline.element);
+ domBreakpointRow.element.appendChild(this._pauseReasonTreeOutline.element);
- this._pauseReasonGroup.rows = [domBreakpointDetailsSection];
+ let ownerElementRow = new WebInspector.DetailsSectionSimpleRow(WebInspector.UIString("Element"), WebInspector.linkifyNodeReference(domNode));
+ this._pauseReasonGroup.rows = [domBreakpointRow, ownerElementRow];
+
+ if (domBreakpoint.type !== WebInspector.DOMBreakpoint.Type.SubtreeModified)
+ return true;
+
+ console.assert(pauseData.targetNode);
+
+ let remoteObject = WebInspector.RemoteObject.fromPayload(pauseData.targetNode, target);
+ remoteObject.pushNodeToFrontend((nodeId) => {
+ if (!nodeId)
+ return;
+
+ let node = WebInspector.domTreeManager.nodeForId(nodeId);
+ console.assert(node, "Missing node for id.", nodeId);
+ if (!node)
+ return;
+
+ let fragment = document.createDocumentFragment();
+ let description = pauseData.insertion ? WebInspector.UIString("Child added to ") : WebInspector.UIString("Removed descendant ");
+ fragment.append(description, WebInspector.linkifyNodeReference(node));
+
+ let targetDescriptionRow = new WebInspector.DetailsSectionSimpleRow(WebInspector.UIString("Details"), fragment);
+ targetDescriptionRow.element.classList.add("target-description");
+
+ this._pauseReasonGroup.rows = this._pauseReasonGroup.rows.concat(targetDescriptionRow);
+ });
+
return true;
}
break;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes