Diff
Modified: trunk/LayoutTests/ChangeLog (214955 => 214956)
--- trunk/LayoutTests/ChangeLog 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/LayoutTests/ChangeLog 2017-04-05 18:57:35 UTC (rev 214956)
@@ -1,3 +1,13 @@
+2017-04-05 Matt Baker <[email protected]>
+
+ Web Inspector: XHR breakpoints should be global
+ https://bugs.webkit.org/show_bug.cgi?id=170033
+
+ Reviewed by Joseph Pecoraro..
+
+ * inspector/dom-debugger/xhr-breakpoints.html:
+ Update for XHRBreakpoint constructor change.
+
2017-04-05 Chris Dumez <[email protected]>
<input type="range"> changing to disabled while active breaks all pointer events
Modified: trunk/LayoutTests/inspector/dom-debugger/xhr-breakpoints.html (214955 => 214956)
--- trunk/LayoutTests/inspector/dom-debugger/xhr-breakpoints.html 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/LayoutTests/inspector/dom-debugger/xhr-breakpoints.html 2017-04-05 18:57:35 UTC (rev 214956)
@@ -48,7 +48,7 @@
if (!mainFrame)
reject();
- let breakpoint = new WebInspector.XHRBreakpoint(mainFrame.url, url);
+ let breakpoint = new WebInspector.XHRBreakpoint(url);
WebInspector.domDebuggerManager.awaitEvent(WebInspector.DOMDebuggerManager.Event.XHRBreakpointAdded)
.then(() => {
InspectorTest.expectFalse(breakpoint.disabled, "Breakpoint should not be disabled initially.");
Modified: trunk/Source/WebInspectorUI/ChangeLog (214955 => 214956)
--- trunk/Source/WebInspectorUI/ChangeLog 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/ChangeLog 2017-04-05 18:57:35 UTC (rev 214956)
@@ -1,3 +1,50 @@
+2017-04-05 Matt Baker <[email protected]>
+
+ Web Inspector: XHR breakpoints should be global
+ https://bugs.webkit.org/show_bug.cgi?id=170033
+
+ Reviewed by Joseph Pecoraro.
+
+ * Localizations/en.lproj/localizedStrings.js:
+ Shorten XHR breakpoint tree element "URL contains:" title to "URL".
+
+ * UserInterface/Controllers/DOMDebuggerManager.js:
+ Change storage of XHR breakpoints from a map to a simple array.
+ (WebInspector.DOMDebuggerManager):
+ (WebInspector.DOMDebuggerManager.prototype.get xhrBreakpoints):
+ (WebInspector.DOMDebuggerManager.prototype.addXHRBreakpoint):
+ Dispatch the "breakpoint added" event immediately after adding the
+ breakpoint, rather than waiting for it to resolve.
+
+ (WebInspector.DOMDebuggerManager.prototype.removeXHRBreakpoint):
+ (WebInspector.DOMDebuggerManager.prototype._speculativelyResolveBreakpoints):
+ (WebInspector.DOMDebuggerManager.prototype._resolveXHRBreakpoint):
+ (WebInspector.DOMDebuggerManager.prototype._saveXHRBreakpoints):
+ (WebInspector.DOMDebuggerManager.prototype._mainResourceDidChange):
+
+ * UserInterface/Models/XHRBreakpoint.js:
+ An XHR breakpoint should not be associated with a particular document.
+ (WebInspector.XHRBreakpoint):
+ (WebInspector.XHRBreakpoint.prototype.get serializableInfo):
+ (WebInspector.XHRBreakpoint.prototype.saveIdentityToCookie):
+ (WebInspector.XHRBreakpoint.prototype.get documentURL): Deleted.
+
+ * UserInterface/Views/DebuggerSidebarPanel.css:
+ Use default emdash-separated title/subtitle style instead of the
+ custom "URL contains:" labeling.
+
+ (.sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle):
+ (.sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle:before): Deleted.
+ (body[dir=ltr] .sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle): Deleted.
+ (body[dir=rtl] .sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle): Deleted.
+
+ * UserInterface/Views/DebuggerSidebarPanel.js:
+ (WebInspector.DebuggerSidebarPanel.prototype.willDismissPopover):
+ (WebInspector.DebuggerSidebarPanel):
+
+ * UserInterface/Views/XHRBreakpointTreeElement.js:
+ (WebInspector.XHRBreakpointTreeElement):
+
2017-04-04 Brian Burg <[email protected]>
Web Inspector: RTL: layout issues in Type Profiler popovers
Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (214955 => 214956)
--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-04-05 18:57:35 UTC (rev 214956)
@@ -864,7 +864,7 @@
localizedStrings["Type"] = "Type";
localizedStrings["Type Issue"] = "Type Issue";
localizedStrings["Type information for variable: %s"] = "Type information for variable: %s";
-localizedStrings["URL contains:"] = "URL contains:";
+localizedStrings["URL"] = "URL";
localizedStrings["Unable to determine path to property from root"] = "Unable to determine path to property from root";
localizedStrings["Uncaught Exceptions"] = "Uncaught Exceptions";
localizedStrings["Unchanged"] = "Unchanged";
Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js (214955 => 214956)
--- trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js 2017-04-05 18:57:35 UTC (rev 214956)
@@ -34,11 +34,11 @@
this._domBreakpointFrameIdentifierMap = new Map;
this._xhrBreakpointsSetting = new WebInspector.Setting("xhr-breakpoints", []);
- this._xhrBreakpointURLMap = new Map;
+ this._xhrBreakpoints = [];
this._allRequestsBreakpointEnabledSetting = new WebInspector.Setting("break-on-all-requests", false);
const emptyURL = "";
- this._allRequestsBreakpoint = new WebInspector.XHRBreakpoint(null, emptyURL, !this._allRequestsBreakpointEnabledSetting.value);
+ this._allRequestsBreakpoint = new WebInspector.XHRBreakpoint(emptyURL, !this._allRequestsBreakpointEnabledSetting.value);
WebInspector.DOMBreakpoint.addEventListener(WebInspector.DOMBreakpoint.Event.DisabledStateDidChange, this._domBreakpointDisabledStateDidChange, this);
WebInspector.XHRBreakpoint.addEventListener(WebInspector.XHRBreakpoint.Event.DisabledStateDidChange, this._xhrBreakpointDisabledStateDidChange, this);
@@ -60,7 +60,7 @@
}
for (let cookie of this._xhrBreakpointsSetting.value) {
- let breakpoint = new WebInspector.XHRBreakpoint(cookie.documentURL, cookie.url, cookie.disabled);
+ let breakpoint = new WebInspector.XHRBreakpoint(cookie.url, cookie.disabled);
this.addXHRBreakpoint(breakpoint);
}
@@ -100,19 +100,8 @@
return resolvedBreakpoints;
}
- get xhrBreakpoints()
- {
- let mainFrame = WebInspector.frameResourceManager.mainFrame;
- if (!mainFrame)
- return [];
+ get xhrBreakpoints() { return this._xhrBreakpoints; }
- let breakpoints = this._xhrBreakpointURLMap.get(mainFrame.url)
- if (!breakpoints)
- return [];
-
- return breakpoints.slice();
- }
-
isBreakpointRemovable(breakpoint)
{
return breakpoint !== this._allRequestsBreakpoint;
@@ -186,17 +175,20 @@
addXHRBreakpoint(breakpoint)
{
console.assert(breakpoint instanceof WebInspector.XHRBreakpoint);
- if (!breakpoint || !breakpoint.documentURL)
+ if (!breakpoint)
return;
- let url = ""
- let breakpoints = this._xhrBreakpointURLMap.get(url);
- if (!breakpoints) {
- breakpoints = [breakpoint];
- this._xhrBreakpointURLMap.set(url, breakpoints);
- } else
- breakpoints.push(breakpoint);
+ console.assert(!this._xhrBreakpoints.includes(breakpoint), "Already added XHR breakpoint.", breakpoint);
+ if (this._xhrBreakpoints.includes(breakpoint))
+ return;
+ if (this._xhrBreakpoints.some((entry) => entry.url ="" breakpoint.url))
+ return;
+
+ this._xhrBreakpoints.push(breakpoint);
+
+ this.dispatchEventToListeners(WebInspector.DOMDebuggerManager.Event.XHRBreakpointAdded, {breakpoint});
+
this._resolveXHRBreakpoint(breakpoint);
this._saveXHRBreakpoints();
}
@@ -207,17 +199,14 @@
if (!breakpoint)
return;
- let url = ""
- let breakpoints = this._xhrBreakpointURLMap.get(url);
- breakpoints.remove(breakpoint, true);
+ if (!this._xhrBreakpoints.includes(breakpoint))
+ return;
- this._detachXHRBreakpoint(breakpoint);
+ this._xhrBreakpoints.remove(breakpoint, true);
- if (!breakpoints.length)
- this._xhrBreakpointURLMap.delete(url);
-
this.dispatchEventToListeners(WebInspector.DOMDebuggerManager.Event.DOMBreakpointRemoved, {breakpoint});
+ this._detachXHRBreakpoint(breakpoint);
this._saveXHRBreakpoints();
}
@@ -288,11 +277,8 @@
}
}
- let xhrBreakpoints = this._xhrBreakpointURLMap.get(mainFrame.url);
- if (xhrBreakpoints) {
- for (let breakpoint of xhrBreakpoints)
- this._resolveXHRBreakpoint(breakpoint);
- }
+ for (let breakpoint of this._xhrBreakpoints)
+ this._resolveXHRBreakpoint(breakpoint);
}
_resolveDOMBreakpoint(breakpoint, nodeIdentifier)
@@ -374,7 +360,7 @@
return;
this._updateXHRBreakpoint(breakpoint, () => {
- this.dispatchEventToListeners(WebInspector.DOMDebuggerManager.Event.XHRBreakpointAdded, {breakpoint});
+ breakpoint.dispatchEventToListeners(WebInspector.XHRBreakpoint.Event.ResolvedStateDidChange);
});
}
@@ -395,11 +381,7 @@
if (this._restoringBreakpoints)
return;
- let breakpointsToSave = [];
- for (let breakpoints of this._xhrBreakpointURLMap.values())
- breakpointsToSave = breakpointsToSave.concat(breakpoints);
-
- this._xhrBreakpointsSetting.value = breakpointsToSave.map((breakpoint) => breakpoint.serializableInfo);
+ this._xhrBreakpointsSetting.value = this._xhrBreakpoints.map((breakpoint) => breakpoint.serializableInfo);
}
_domBreakpointDisabledStateDidChange(event)
@@ -440,11 +422,8 @@
this._domBreakpointFrameIdentifierMap.clear();
- let xhrBreakpoints = this._xhrBreakpointURLMap.get(frame.url);
- if (xhrBreakpoints) {
- for (let breakpoint of xhrBreakpoints)
- this._detachXHRBreakpoint(breakpoint);
- }
+ for (let breakpoint of this._xhrBreakpoints)
+ this._detachXHRBreakpoint(breakpoint);
} else
this._detachBreakpointsForFrame(frame);
Modified: trunk/Source/WebInspectorUI/UserInterface/Models/XHRBreakpoint.js (214955 => 214956)
--- trunk/Source/WebInspectorUI/UserInterface/Models/XHRBreakpoint.js 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/UserInterface/Models/XHRBreakpoint.js 2017-04-05 18:57:35 UTC (rev 214956)
@@ -25,11 +25,10 @@
WebInspector.XHRBreakpoint = class XHRBreakpoint extends WebInspector.Object
{
- constructor(documentURL, url, disabled)
+ constructor(url, disabled)
{
super();
- this._documentURL = documentURL;
this._url = url;
this._disabled = disabled || false;
}
@@ -36,7 +35,6 @@
// Public
- get documentURL() { return this._documentURL; }
get url() { return this._url; }
get disabled()
@@ -56,7 +54,7 @@
get serializableInfo()
{
- let info = {documentURL: this._documentURL, url: this._url};
+ let info = {url: this._url};
if (this._disabled)
info.disabled = true;
@@ -65,12 +63,10 @@
saveIdentityToCookie(cookie)
{
- cookie[WebInspector.XHRBreakpoint.DocumentURLCookieKey] = this._documentURL;
cookie[WebInspector.XHRBreakpoint.URLCookieKey] = this._url;
}
};
-WebInspector.XHRBreakpoint.DocumentURLCookieKey = "xhr-breakpoint-document-url";
WebInspector.XHRBreakpoint.URLCookieKey = "xhr-breakpoint-url";
WebInspector.XHRBreakpoint.Event = {
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.css (214955 => 214956)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.css 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.css 2017-04-05 18:57:35 UTC (rev 214956)
@@ -120,21 +120,6 @@
display: none;
}
-.sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle:before {
- content: "";
-}
-
.sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle {
- padding-left: 5px;
font-family: Menlo, monospace;
-
- --subtitle-padding-start: 6px;
}
-
-body[dir=ltr] .sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle {
- padding-left: var(--subtitle-padding-start);
-}
-
-body[dir=rtl] .sidebar > .panel.navigation.debugger .details-section.xhr-breakpoints .item.breakpoint .subtitle {
- padding-right: var(--subtitle-padding-start);
-}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js (214955 => 214956)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js 2017-04-05 18:57:35 UTC (rev 214956)
@@ -1171,8 +1171,7 @@
if (!url)
return;
- let documentURL = WebInspector.frameResourceManager.mainFrame.url;
- WebInspector.domDebuggerManager.addXHRBreakpoint(new WebInspector.XHRBreakpoint(documentURL, url));
+ WebInspector.domDebuggerManager.addXHRBreakpoint(new WebInspector.XHRBreakpoint(url));
}
};
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/XHRBreakpointTreeElement.js (214955 => 214956)
--- trunk/Source/WebInspectorUI/UserInterface/Views/XHRBreakpointTreeElement.js 2017-04-05 18:47:39 UTC (rev 214955)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/XHRBreakpointTreeElement.js 2017-04-05 18:57:35 UTC (rev 214956)
@@ -34,8 +34,8 @@
let subtitle;
if (!title) {
- title = WebInspector.UIString("URL contains:");
- subtitle = breakpoint.url;
+ title = WebInspector.UIString("URL");
+ subtitle = doubleQuotedString(breakpoint.url);
}
super(["breakpoint", className], title, subtitle, breakpoint);