Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (242317 => 242318)
--- trunk/Source/WebInspectorUI/ChangeLog 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/ChangeLog 2019-03-02 22:40:43 UTC (rev 242318)
@@ -1,5 +1,65 @@
2019-03-02 Devin Rousso <[email protected]>
+ Web Inspector: Debugger: DOM, URL, and Event breakpoints don't grey out when all breakpoints are disabled
+ https://bugs.webkit.org/show_bug.cgi?id=195170
+ <rdar://problem/48478193>
+
+ Reviewed by Joseph Pecoraro.
+
+ * UserInterface/Views/DOMBreakpointTreeElement.js:
+ (WI.DOMBreakpointTreeElement):
+ (WI.DOMBreakpointTreeElement.prototype.onattach):
+ (WI.DOMBreakpointTreeElement.prototype.ondetach):
+ (WI.DOMBreakpointTreeElement.prototype._updateStatus):
+ * UserInterface/Views/EventBreakpointTreeElement.js:
+ (WI.EventBreakpointTreeElement):
+ (WI.EventBreakpointTreeElement.prototype.onattach):
+ (WI.EventBreakpointTreeElement.prototype.ondetach):
+ (WI.EventBreakpointTreeElement.prototype._updateStatus):
+ * UserInterface/Views/URLBreakpointTreeElement.js:
+ (WI.URLBreakpointTreeElement):
+ (WI.URLBreakpointTreeElement.prototype.onattach):
+ (WI.URLBreakpointTreeElement.prototype.ondetach):
+ (WI.URLBreakpointTreeElement.prototype._updateStatus):
+ Remove the `"resolved"` class when the global "breakpoints enabled" state is changed.
+
+ * UserInterface/Controllers/DOMDebuggerManager.js:
+ (WI.DOMDebuggerManager):
+ (WI.DOMDebuggerManager.prototype._handleDOMBreakpointDisabledStateChanged): Added.
+ (WI.DOMDebuggerManager.prototype._handleEventBreakpointDisabledStateChanged): Added.
+ (WI.DOMDebuggerManager.prototype._handleURLBreakpointDisabledStateChanged): Added.
+ (WI.DOMDebuggerManager.prototype._updateEventBreakpoint):
+ (WI.DOMDebuggerManager.prototype._updateURLBreakpoint):
+ (WI.DOMDebuggerManager.prototype._resolveEventBreakpoint):
+ (WI.DOMDebuggerManager.prototype._resolveURLBreakpoint):
+ (WI.DOMDebuggerManager.prototype._updateEventBreakpoint.breakpointUpdated): Deleted.
+ (WI.DOMDebuggerManager.prototype._updateURLBreakpoint.breakpointUpdated): Deleted.
+ * UserInterface/Models/DOMBreakpoint.js:
+ (WI.DOMBreakpoint):
+ (WI.DOMBreakpoint.deserialize): Added.
+ (WI.DOMBreakpoint.prototype.set disabled):
+ (WI.DOMBreakpoint.prototype.set domNodeIdentifier):
+ * UserInterface/Models/EventBreakpoint.js:
+ (WI.EventBreakpoint.deserialize): Added.
+ (WI.EventBreakpoint.prototype.set disabled):
+ (WI.EventBreakpoint.fromPayload): Deleted.
+ * UserInterface/Models/URLBreakpoint.js:
+ (WI.URLBreakpoint.deserialize): Added.
+ (WI.URLBreakpoint.prototype.set disabled):
+ * UserInterface/Views/DOMTreeContentView.js:
+ (WI.DOMTreeContentView):
+ (WI.DOMTreeContentView.prototype._handleDOMBreakpointDisabledStateChanged): Added.
+ (WI.DOMTreeContentView.prototype._handleDOMBreakpointDOMNodeChanged): Added.
+ * UserInterface/Views/DebuggerSidebarPanel.js:
+ (WI.DebuggerSidebarPanel.prototype._handleDOMBreakpointResolvedStateChanged): Added.
+ * UserInterface/Views/SourcesNavigationSidebarPanel.js:
+ (WI.SourcesNavigationSidebarPanel):
+ (WI.SourcesNavigationSidebarPanel.prototype._handleDOMBreakpointResolvedStateChanged): Added.
+ Drive-by: rename all events with the name `*DidChange` to `*Changed`.
+ Drive-by: create static `deserialize` helper functions.
+
+2019-03-02 Devin Rousso <[email protected]>
+
Web Inspector: Sources: breakpoints should be disabled when an audit is running
https://bugs.webkit.org/show_bug.cgi?id=195105
<rdar://problem/48441373>
Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -40,11 +40,13 @@
this._urlBreakpoints = [];
this._allRequestsBreakpointEnabledSetting = new WI.Setting("break-on-all-requests", false);
- this._allRequestsBreakpoint = new WI.URLBreakpoint(null, null, !this._allRequestsBreakpointEnabledSetting.value);
+ this._allRequestsBreakpoint = new WI.URLBreakpoint(WI.URLBreakpoint.Type.Text, "", {
+ disabled: !this._allRequestsBreakpointEnabledSetting.value,
+ });
- WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DisabledStateDidChange, this._domBreakpointDisabledStateDidChange, this);
- WI.EventBreakpoint.addEventListener(WI.EventBreakpoint.Event.DisabledStateDidChange, this._eventBreakpointDisabledStateDidChange, this);
- WI.URLBreakpoint.addEventListener(WI.URLBreakpoint.Event.DisabledStateDidChange, this._urlBreakpointDisabledStateDidChange, this);
+ WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DisabledStateChanged, this._handleDOMBreakpointDisabledStateChanged, this);
+ WI.EventBreakpoint.addEventListener(WI.EventBreakpoint.Event.DisabledStateChanged, this._handleEventBreakpointDisabledStateChanged, this);
+ WI.URLBreakpoint.addEventListener(WI.URLBreakpoint.Event.DisabledStateChanged, this._handleURLBreakpointDisabledStateChanged, this);
WI.domManager.addEventListener(WI.DOMManager.Event.NodeRemoved, this._nodeRemoved, this);
WI.domManager.addEventListener(WI.DOMManager.Event.NodeInserted, this._nodeInserted, this);
@@ -57,18 +59,14 @@
if (this.supported) {
this._restoringBreakpoints = true;
- for (let cookie of this._domBreakpointsSetting.value) {
- let breakpoint = new WI.DOMBreakpoint(cookie, cookie.type, cookie.disabled);
- this.addDOMBreakpoint(breakpoint);
- }
+ for (let serializedInfo of this._domBreakpointsSetting.value)
+ this.addDOMBreakpoint(WI.DOMBreakpoint.deserialize(serializedInfo));
- for (let payload of this._eventBreakpointSetting.value)
- this.addEventBreakpoint(WI.EventBreakpoint.fromPayload(payload));
+ for (let serializedInfo of this._eventBreakpointSetting.value)
+ this.addEventBreakpoint(WI.EventBreakpoint.deserialize(serializedInfo));
- for (let cookie of this._urlBreakpointsSetting.value) {
- let breakpoint = new WI.URLBreakpoint(cookie.type, cookie.url, cookie.disabled);
- this.addURLBreakpoint(breakpoint);
- }
+ for (let serializedInfo of this._urlBreakpointsSetting.value)
+ this.addURLBreakpoint(WI.URLBreakpoint.deserialize(serializedInfo));
this._restoringBreakpoints = false;
this._speculativelyResolveBreakpoints();
@@ -466,60 +464,42 @@
DOMDebuggerAgent.setDOMBreakpoint(nodeIdentifier, breakpoint.type, breakpointUpdated);
}
- _updateEventBreakpoint(breakpoint, callback)
+ _updateEventBreakpoint(breakpoint)
{
- function breakpointUpdated(error)
- {
- if (error)
- console.error(error);
-
- if (callback)
- callback(error);
- }
-
// Compatibility (iOS 12): DOMDebuggerAgent.removeEventBreakpoint did not exist.
if (!WI.DOMDebuggerManager.supportsEventBreakpoints()) {
console.assert(breakpoint.type === WI.EventBreakpoint.Type.Listener);
if (breakpoint.disabled)
- DOMDebuggerAgent.removeEventListenerBreakpoint(breakpoint.eventName, breakpointUpdated);
+ DOMDebuggerAgent.removeEventListenerBreakpoint(breakpoint.eventName);
else
- DOMDebuggerAgent.setEventListenerBreakpoint(breakpoint.eventName, breakpointUpdated);
+ DOMDebuggerAgent.setEventListenerBreakpoint(breakpoint.eventName);
return;
}
if (breakpoint.disabled)
- DOMDebuggerAgent.removeEventBreakpoint(breakpoint.type, breakpoint.eventName, breakpointUpdated);
+ DOMDebuggerAgent.removeEventBreakpoint(breakpoint.type, breakpoint.eventName);
else
- DOMDebuggerAgent.setEventBreakpoint(breakpoint.type, breakpoint.eventName, breakpointUpdated);
+ DOMDebuggerAgent.setEventBreakpoint(breakpoint.type, breakpoint.eventName);
}
- _updateURLBreakpoint(breakpoint, callback)
+ _updateURLBreakpoint(breakpoint)
{
- function breakpointUpdated(error)
- {
- if (error)
- console.error(error);
-
- if (callback && typeof callback === "function")
- callback(error);
- }
-
// Compatibility (iOS 12.1): DOMDebuggerAgent.removeURLBreakpoint did not exist.
if (!WI.DOMDebuggerManager.supportsURLBreakpoints()) {
if (breakpoint.disabled)
- DOMDebuggerAgent.removeXHRBreakpoint(breakpoint.url, breakpointUpdated);
+ DOMDebuggerAgent.removeXHRBreakpoint(breakpoint.url);
else {
let isRegex = breakpoint.type === WI.URLBreakpoint.Type.RegularExpression;
- DebuggerAgent.setXHRBreakpoint(breakpoint.url, isRegex, breakpointUpdated);
+ DebuggerAgent.setXHRBreakpoint(breakpoint.url, isRegex);
}
return;
}
if (breakpoint.disabled)
- DOMDebuggerAgent.removeURLBreakpoint(breakpoint.url, breakpointUpdated);
+ DOMDebuggerAgent.removeURLBreakpoint(breakpoint.url);
else {
let isRegex = breakpoint.type === WI.URLBreakpoint.Type.RegularExpression;
- DOMDebuggerAgent.setURLBreakpoint(breakpoint.url, isRegex, breakpointUpdated);
+ DOMDebuggerAgent.setURLBreakpoint(breakpoint.url, isRegex);
}
}
@@ -528,9 +508,7 @@
if (breakpoint.disabled)
return;
- this._updateEventBreakpoint(breakpoint, () => {
- breakpoint.dispatchEventToListeners(WI.EventBreakpoint.Event.ResolvedStateDidChange);
- });
+ this._updateEventBreakpoint(breakpoint);
}
_resolveURLBreakpoint(breakpoint)
@@ -538,9 +516,7 @@
if (breakpoint.disabled)
return;
- this._updateURLBreakpoint(breakpoint, () => {
- breakpoint.dispatchEventToListeners(WI.URLBreakpoint.Event.ResolvedStateDidChange);
- });
+ this._updateURLBreakpoint(breakpoint);
}
_saveDOMBreakpoints()
@@ -571,7 +547,7 @@
this._urlBreakpointsSetting.value = this._urlBreakpoints.map((breakpoint) => breakpoint.serializableInfo);
}
- _domBreakpointDisabledStateDidChange(event)
+ _handleDOMBreakpointDisabledStateChanged(event)
{
let breakpoint = event.target;
this._updateDOMBreakpoint(breakpoint);
@@ -578,7 +554,7 @@
this._saveDOMBreakpoints();
}
- _eventBreakpointDisabledStateDidChange(event)
+ _handleEventBreakpointDisabledStateChanged(event)
{
let breakpoint = event.target;
this._updateEventBreakpoint(breakpoint);
@@ -585,7 +561,7 @@
this._saveEventBreakpoints();
}
- _urlBreakpointDisabledStateDidChange(event)
+ _handleURLBreakpointDisabledStateChanged(event)
{
let breakpoint = event.target;
Modified: trunk/Source/WebInspectorUI/UserInterface/Models/DOMBreakpoint.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Models/DOMBreakpoint.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Models/DOMBreakpoint.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -25,9 +25,10 @@
WI.DOMBreakpoint = class DOMBreakpoint extends WI.Object
{
- constructor(domNodeOrInfo, type, disabled)
+ constructor(domNodeOrInfo, type, {disabled} = {})
{
- console.assert(domNodeOrInfo, "Missing DOMNode or info.");
+ console.assert(domNodeOrInfo instanceof WI.DOMNode || typeof domNodeOrInfo === "object", domNodeOrInfo);
+ console.assert(Object.values(WI.DOMBreakpoint.Type).includes(type), type);
super();
@@ -46,6 +47,15 @@
this._disabled = disabled || false;
}
+ // Static
+
+ static deserialize(serializedInfo)
+ {
+ return new WI.DOMBreakpoint(serializedInfo, serializedInfo.type, {
+ disabled: !!serializedInfo.disabled,
+ });
+ }
+
// Public
get type() { return this._type; }
@@ -64,7 +74,7 @@
this._disabled = disabled;
- this.dispatchEventToListeners(WI.DOMBreakpoint.Event.DisabledStateDidChange);
+ this.dispatchEventToListeners(WI.DOMBreakpoint.Event.DisabledStateChanged);
}
get domNodeIdentifier()
@@ -83,7 +93,7 @@
this._domNodeIdentifier = nodeIdentifier;
- this.dispatchEventToListeners(WI.DOMBreakpoint.Event.ResolvedStateDidChange, data);
+ this.dispatchEventToListeners(WI.DOMBreakpoint.Event.DOMNodeChanged, data);
}
get serializableInfo()
@@ -114,6 +124,6 @@
};
WI.DOMBreakpoint.Event = {
- DisabledStateDidChange: "dom-breakpoint-disabled-state-did-change",
- ResolvedStateDidChange: "dom-breakpoint-resolved-state-did-change",
+ DOMNodeChanged: "dom-breakpoint-dom-node-changed",
+ DisabledStateChanged: "dom-breakpoint-disabled-state-changed",
};
Modified: trunk/Source/WebInspectorUI/UserInterface/Models/EventBreakpoint.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Models/EventBreakpoint.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Models/EventBreakpoint.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -25,27 +25,25 @@
WI.EventBreakpoint = class EventBreakpoint extends WI.Object
{
- constructor(type, eventName, {disabled, eventListener} = {})
+ constructor(type, eventName, {eventListener, disabled} = {})
{
super();
- console.assert(typeof type === "string");
- console.assert(Object.values(WI.EventBreakpoint.Type).includes(type));
- console.assert(typeof eventName === "string");
+ console.assert(Object.values(WI.EventBreakpoint.Type).includes(type), type);
+ console.assert(typeof eventName === "string", eventName);
this._type = type;
this._eventName = eventName;
-
+ this._eventListener = eventListener || null;
this._disabled = disabled || false;
- this._eventListener = eventListener || null;
}
// Static
- static fromPayload(payload)
+ static deserialize(serializedInfo)
{
- return new WI.EventBreakpoint(payload.type, payload.eventName, {
- disabled: !!payload.disabled,
+ return new WI.EventBreakpoint(serializedInfo.type, serializedInfo.eventName, {
+ disabled: !!serializedInfo.disabled,
});
}
@@ -67,7 +65,7 @@
this._disabled = disabled;
- this.dispatchEventToListeners(WI.EventBreakpoint.Event.DisabledStateDidChange);
+ this.dispatchEventToListeners(WI.EventBreakpoint.Event.DisabledStateChanged);
}
get serializableInfo()
@@ -99,6 +97,5 @@
WI.EventBreakpoint.EventNameCookieKey = "event-breakpoint-event-name";
WI.EventBreakpoint.Event = {
- DisabledStateDidChange: "event-breakpoint-disabled-state-did-change",
- ResolvedStateDidChange: "event-breakpoint-resolved-state-did-change",
+ DisabledStateChanged: "event-breakpoint-disabled-state-changed",
};
Modified: trunk/Source/WebInspectorUI/UserInterface/Models/URLBreakpoint.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Models/URLBreakpoint.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Models/URLBreakpoint.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -25,15 +25,27 @@
WI.URLBreakpoint = class URLBreakpoint extends WI.Object
{
- constructor(type, url, disabled)
+ constructor(type, url, {disabled} = {})
{
+ console.assert(Object.values(WI.URLBreakpoint.Type).includes(type), type);
+ console.assert(typeof url ="" "string", url);
+
super();
- this._type = type || WI.URLBreakpoint.Type.Text;
- this._url = url || "";
+ this._type = type;
+ this._url = url;
this._disabled = disabled || false;
}
+ // Static
+
+ static deserialize(serializedInfo)
+ {
+ return new WI.URLBreakpoint(serializedInfo.type, serializedInfo.url, {
+ disabled: !!serializedInfo.disabled,
+ });
+ }
+
// Public
get type() { return this._type; }
@@ -51,7 +63,7 @@
this._disabled = disabled;
- this.dispatchEventToListeners(WI.URLBreakpoint.Event.DisabledStateDidChange);
+ this.dispatchEventToListeners(WI.URLBreakpoint.Event.DisabledStateChanged);
}
get serializableInfo()
@@ -70,8 +82,7 @@
};
WI.URLBreakpoint.Event = {
- DisabledStateDidChange: "url-breakpoint-disabled-state-did-change",
- ResolvedStateDidChange: "url-breakpoint-resolved-state-did-change",
+ DisabledStateChanged: "url-breakpoint-disabled-state-changed",
};
WI.URLBreakpoint.Type = {
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DOMBreakpointTreeElement.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DOMBreakpointTreeElement.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DOMBreakpointTreeElement.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -39,13 +39,9 @@
super(["breakpoint", "dom", className], title, subtitle, breakpoint);
this.status = WI.ImageUtilities.useSVGSymbol("Images/Breakpoint.svg");
- this.status.classList.add("status-image", "resolved");
+ this.status.className = WI.BreakpointTreeElement.StatusImageElementStyleClassName;
this.tooltipHandledSeparately = true;
-
- breakpoint.addEventListener(WI.DOMBreakpoint.Event.DisabledStateDidChange, this._updateStatus, this);
-
- this._updateStatus();
}
// Static
@@ -71,6 +67,9 @@
{
super.onattach();
+ this.representedObject.addEventListener(WI.DOMBreakpoint.Event.DisabledStateChanged, this._updateStatus, this);
+ WI.debuggerManager.addEventListener(WI.DebuggerManager.Event.BreakpointsEnabledDidChange, this._updateStatus, this);
+
this._boundStatusImageElementClicked = this._statusImageElementClicked.bind(this);
this._boundStatusImageElementFocused = this._statusImageElementFocused.bind(this);
this._boundStatusImageElementMouseDown = this._statusImageElementMouseDown.bind(this);
@@ -78,6 +77,8 @@
this.status.addEventListener("click", this._boundStatusImageElementClicked);
this.status.addEventListener("focus", this._boundStatusImageElementFocused);
this.status.addEventListener("mousedown", this._boundStatusImageElementMouseDown);
+
+ this._updateStatus();
}
ondetach()
@@ -84,6 +85,9 @@
{
super.ondetach();
+ this.representedObject.removeEventListener(null, null, this);
+ WI.debuggerManager.removeEventListener(null, null, this);
+
this.status.removeEventListener("click", this._boundStatusImageElementClicked);
this.status.removeEventListener("focus", this._boundStatusImageElementFocused);
this.status.removeEventListener("mousedown", this._boundStatusImageElementMouseDown);
@@ -154,6 +158,10 @@
_updateStatus()
{
- this.status.classList.toggle("disabled", this.representedObject.disabled);
+ if (!this.status)
+ return;
+
+ this.status.classList.toggle(WI.BreakpointTreeElement.StatusImageDisabledStyleClassName, this.representedObject.disabled);
+ this.status.classList.toggle(WI.BreakpointTreeElement.StatusImageResolvedStyleClassName, WI.debuggerManager.breakpointsEnabled);
}
};
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DOMTreeContentView.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -95,8 +95,8 @@
WI.domDebuggerManager.addEventListener(WI.DOMDebuggerManager.Event.DOMBreakpointAdded, this._domBreakpointAddedOrRemoved, this);
WI.domDebuggerManager.addEventListener(WI.DOMDebuggerManager.Event.DOMBreakpointRemoved, this._domBreakpointAddedOrRemoved, this);
- WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DisabledStateDidChange, this._domBreakpointDisabledStateDidChange, this);
- WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.ResolvedStateDidChange, this._domBreakpointResolvedStateDidChange, this);
+ WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DisabledStateChanged, this._handleDOMBreakpointDisabledStateChanged, this);
+ WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DOMNodeChanged, this._handleDOMBreakpointDOMNodeChanged, this);
this._breakpointsEnabledDidChange();
}
@@ -745,13 +745,13 @@
this._updateBreakpointStatus(breakpoint.domNodeIdentifier);
}
- _domBreakpointDisabledStateDidChange(event)
+ _handleDOMBreakpointDisabledStateChanged(event)
{
let breakpoint = event.target;
this._updateBreakpointStatus(breakpoint.domNodeIdentifier);
}
- _domBreakpointResolvedStateDidChange(event)
+ _handleDOMBreakpointDOMNodeChanged(event)
{
let breakpoint = event.target;
let nodeIdentifier = breakpoint.domNodeIdentifier || event.data.oldNodeIdentifier;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -53,7 +53,7 @@
WI.debuggerManager.addEventListener(WI.DebuggerManager.Event.ActiveCallFrameDidChange, this._debuggerActiveCallFrameDidChange, this);
WI.debuggerManager.addEventListener(WI.DebuggerManager.Event.WaitingToPause, this._debuggerWaitingToPause, this);
- WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.ResolvedStateDidChange, this._domBreakpointResolvedStateDidChange, this);
+ WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DOMNodeChanged, this._handleDOMBreakpointDOMNodeChanged, this);
WI.timelineManager.addEventListener(WI.TimelineManager.Event.CapturingWillStart, this._timelineCapturingWillStart, this);
WI.timelineManager.addEventListener(WI.TimelineManager.Event.CapturingStopped, this._timelineCapturingStopped, this);
@@ -1368,7 +1368,7 @@
return issueTreeElement;
}
- _domBreakpointResolvedStateDidChange(event)
+ _handleDOMBreakpointDOMNodeChanged(event)
{
let breakpoint = event.target;
if (breakpoint.domNodeIdentifier)
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/EventBreakpointTreeElement.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Views/EventBreakpointTreeElement.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/EventBreakpointTreeElement.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -40,13 +40,9 @@
super(classNames, title, subtitle, breakpoint);
this.status = WI.ImageUtilities.useSVGSymbol("Images/Breakpoint.svg");
- this.status.classList.add("status-image", "resolved");
+ this.status.className = WI.BreakpointTreeElement.StatusImageElementStyleClassName;
this.tooltipHandledSeparately = true;
-
- breakpoint.addEventListener(WI.EventBreakpoint.Event.DisabledStateDidChange, this._updateStatus, this);
-
- this._updateStatus();
}
// Protected
@@ -55,6 +51,9 @@
{
super.onattach();
+ this.representedObject.addEventListener(WI.EventBreakpoint.Event.DisabledStateChanged, this._updateStatus, this);
+ WI.debuggerManager.addEventListener(WI.DebuggerManager.Event.BreakpointsEnabledDidChange, this._updateStatus, this);
+
this._boundStatusImageElementClicked = this._statusImageElementClicked.bind(this);
this._boundStatusImageElementFocused = this._statusImageElementFocused.bind(this);
this._boundStatusImageElementMouseDown = this._statusImageElementMouseDown.bind(this);
@@ -62,6 +61,8 @@
this.status.addEventListener("click", this._boundStatusImageElementClicked);
this.status.addEventListener("focus", this._boundStatusImageElementFocused);
this.status.addEventListener("mousedown", this._boundStatusImageElementMouseDown);
+
+ this._updateStatus();
}
ondetach()
@@ -68,6 +69,9 @@
{
super.ondetach();
+ this.representedObject.removeEventListener(null, null, this);
+ WI.debuggerManager.removeEventListener(null, null, this);
+
this.status.removeEventListener("click", this._boundStatusImageElementClicked);
this.status.removeEventListener("focus", this._boundStatusImageElementFocused);
this.status.removeEventListener("mousedown", this._boundStatusImageElementMouseDown);
@@ -152,6 +156,10 @@
_updateStatus()
{
- this.status.classList.toggle("disabled", this.representedObject.disabled);
+ if (!this.status)
+ return;
+
+ this.status.classList.toggle(WI.BreakpointTreeElement.StatusImageDisabledStyleClassName, this.representedObject.disabled);
+ this.status.classList.toggle(WI.BreakpointTreeElement.StatusImageResolvedStyleClassName, WI.debuggerManager.breakpointsEnabled);
}
};
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/SourcesNavigationSidebarPanel.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Views/SourcesNavigationSidebarPanel.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/SourcesNavigationSidebarPanel.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -249,7 +249,7 @@
WI.Breakpoint.addEventListener(WI.Breakpoint.Event.DisplayLocationDidChange, this._handleDebuggerObjectDisplayLocationDidChange, this);
WI.IssueMessage.addEventListener(WI.IssueMessage.Event.DisplayLocationDidChange, this._handleDebuggerObjectDisplayLocationDidChange, this);
- WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.ResolvedStateDidChange, this._handleDOMBreakpointResolvedStateDidChange, this);
+ WI.DOMBreakpoint.addEventListener(WI.DOMBreakpoint.Event.DOMNodeChanged, this._handleDOMBreakpointDOMNodeChanged, this);
WI.consoleManager.addEventListener(WI.ConsoleManager.Event.IssueAdded, this._handleConsoleIssueAdded, this);
WI.consoleManager.addEventListener(WI.ConsoleManager.Event.Cleared, this._handleConsoleCleared, this);
@@ -1585,7 +1585,7 @@
newDebuggerTreeElement.revealAndSelect(true, false, true);
}
- _handleDOMBreakpointResolvedStateDidChange(event)
+ _handleDOMBreakpointDOMNodeChanged(event)
{
let breakpoint = event.target;
if (breakpoint.domNodeIdentifier)
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/URLBreakpointTreeElement.js (242317 => 242318)
--- trunk/Source/WebInspectorUI/UserInterface/Views/URLBreakpointTreeElement.js 2019-03-02 21:50:43 UTC (rev 242317)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/URLBreakpointTreeElement.js 2019-03-02 22:40:43 UTC (rev 242318)
@@ -44,13 +44,9 @@
super(["breakpoint", "url", className], title, subtitle, breakpoint);
this.status = WI.ImageUtilities.useSVGSymbol("Images/Breakpoint.svg");
- this.status.classList.add("status-image", "resolved");
+ this.status.className = WI.BreakpointTreeElement.StatusImageElementStyleClassName;
this.tooltipHandledSeparately = true;
-
- breakpoint.addEventListener(WI.URLBreakpoint.Event.DisabledStateDidChange, this._updateStatus, this);
-
- this._updateStatus();
}
// Protected
@@ -59,6 +55,9 @@
{
super.onattach();
+ this.representedObject.addEventListener(WI.URLBreakpoint.Event.DisabledStateChanged, this._updateStatus, this);
+ WI.debuggerManager.addEventListener(WI.DebuggerManager.Event.BreakpointsEnabledDidChange, this._updateStatus, this);
+
this._boundStatusImageElementClicked = this._statusImageElementClicked.bind(this);
this._boundStatusImageElementFocused = this._statusImageElementFocused.bind(this);
this._boundStatusImageElementMouseDown = this._statusImageElementMouseDown.bind(this);
@@ -66,6 +65,8 @@
this.status.addEventListener("click", this._boundStatusImageElementClicked);
this.status.addEventListener("focus", this._boundStatusImageElementFocused);
this.status.addEventListener("mousedown", this._boundStatusImageElementMouseDown);
+
+ this._updateStatus();
}
ondetach()
@@ -72,6 +73,9 @@
{
super.ondetach();
+ this.representedObject.removeEventListener(null, null, this);
+ WI.debuggerManager.removeEventListener(null, null, this);
+
this.status.removeEventListener("click", this._boundStatusImageElementClicked);
this.status.removeEventListener("focus", this._boundStatusImageElementFocused);
this.status.removeEventListener("mousedown", this._boundStatusImageElementMouseDown);
@@ -143,6 +147,10 @@
_updateStatus()
{
- this.status.classList.toggle("disabled", this.representedObject.disabled);
+ if (!this.status)
+ return;
+
+ this.status.classList.toggle(WI.BreakpointTreeElement.StatusImageDisabledStyleClassName, this.representedObject.disabled);
+ this.status.classList.toggle(WI.BreakpointTreeElement.StatusImageResolvedStyleClassName, WI.debuggerManager.breakpointsEnabled);
}
};