Title: [246523] trunk/Source/WebInspectorUI
Revision
246523
Author
[email protected]
Date
2019-06-17 16:42:41 -0700 (Mon, 17 Jun 2019)

Log Message

Web Inspector: Debugger: adding a DOM/Event/URL breakpoint should enable breakpoints
https://bugs.webkit.org/show_bug.cgi?id=198932

Reviewed by Matt Baker.

Match the behavior of _javascript_ breakpoints, which enable breakpoints globally when a new
breakpoint is set or an existing breakpoint is enabled.

This avoids the situation where setting a DOM breakpoint or a specific event listener
breakpoint appears to not "work" because breakpoints are globally disabled. There is no
"breakpoints disabled" banner in the Elements tab, so the user could be completely unaware
of this, and therefore be confused as to why these breakpoints aren't being hit.

* UserInterface/Controllers/DOMManager.js:
(WI.DOMManager.prototype._updateEventBreakpoint):

* UserInterface/Controllers/DOMDebuggerManager.js:
(WI.DOMDebuggerManager.prototype._updateDOMBreakpoint):
(WI.DOMDebuggerManager.prototype._updateEventBreakpoint):
(WI.DOMDebuggerManager.prototype._updateURLBreakpoint):

Modified Paths

Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (246522 => 246523)


--- trunk/Source/WebInspectorUI/ChangeLog	2019-06-17 23:11:59 UTC (rev 246522)
+++ trunk/Source/WebInspectorUI/ChangeLog	2019-06-17 23:42:41 UTC (rev 246523)
@@ -1,5 +1,28 @@
 2019-06-17  Devin Rousso  <[email protected]>
 
+        Web Inspector: Debugger: adding a DOM/Event/URL breakpoint should enable breakpoints
+        https://bugs.webkit.org/show_bug.cgi?id=198932
+
+        Reviewed by Matt Baker.
+
+        Match the behavior of _javascript_ breakpoints, which enable breakpoints globally when a new
+        breakpoint is set or an existing breakpoint is enabled.
+
+        This avoids the situation where setting a DOM breakpoint or a specific event listener
+        breakpoint appears to not "work" because breakpoints are globally disabled. There is no
+        "breakpoints disabled" banner in the Elements tab, so the user could be completely unaware
+        of this, and therefore be confused as to why these breakpoints aren't being hit.
+
+        * UserInterface/Controllers/DOMManager.js:
+        (WI.DOMManager.prototype._updateEventBreakpoint):
+
+        * UserInterface/Controllers/DOMDebuggerManager.js:
+        (WI.DOMDebuggerManager.prototype._updateDOMBreakpoint):
+        (WI.DOMDebuggerManager.prototype._updateEventBreakpoint):
+        (WI.DOMDebuggerManager.prototype._updateURLBreakpoint):
+
+2019-06-17  Devin Rousso  <[email protected]>
+
         Web Inspector: Sources: remove extra space above Breakpoints section when breakpoints are disabled
         https://bugs.webkit.org/show_bug.cgi?id=198933
 

Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js (246522 => 246523)


--- trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js	2019-06-17 23:11:59 UTC (rev 246522)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js	2019-06-17 23:42:41 UTC (rev 246523)
@@ -492,8 +492,12 @@
 
         if (breakpoint.disabled)
             target.DOMDebuggerAgent.removeDOMBreakpoint(breakpoint.domNodeIdentifier, breakpoint.type);
-        else
+        else {
+            if (!this._restoringBreakpoints && !WI.debuggerManager.breakpointsDisabledTemporarily)
+                WI.debuggerManager.breakpointsEnabled = true;
+
             target.DOMDebuggerAgent.setDOMBreakpoint(breakpoint.domNodeIdentifier, breakpoint.type);
+        }
     }
 
     _updateEventBreakpoint(breakpoint, target)
@@ -505,15 +509,23 @@
             console.assert(breakpoint.type === WI.EventBreakpoint.Type.Listener);
             if (breakpoint.disabled)
                 target.DOMDebuggerAgent.removeEventListenerBreakpoint(breakpoint.eventName);
-            else
+            else {
+                if (!this._restoringBreakpoints && !WI.debuggerManager.breakpointsDisabledTemporarily)
+                    WI.debuggerManager.breakpointsEnabled = true;
+
                 target.DOMDebuggerAgent.setEventListenerBreakpoint(breakpoint.eventName);
+            }
             return;
         }
 
         if (breakpoint.disabled)
             target.DOMDebuggerAgent.removeEventBreakpoint(breakpoint.type, breakpoint.eventName);
-        else
+        else {
+            if (!this._restoringBreakpoints && !WI.debuggerManager.breakpointsDisabledTemporarily)
+                WI.debuggerManager.breakpointsEnabled = true;
+
             target.DOMDebuggerAgent.setEventBreakpoint(breakpoint.type, breakpoint.eventName);
+        }
     }
 
     _updateURLBreakpoint(breakpoint, target)
@@ -525,6 +537,9 @@
             if (breakpoint.disabled)
                 target.DOMDebuggerAgent.removeXHRBreakpoint(breakpoint.url);
             else {
+                if (!this._restoringBreakpoints && !WI.debuggerManager.breakpointsDisabledTemporarily)
+                    WI.debuggerManager.breakpointsEnabled = true;
+
                 let isRegex = breakpoint.type === WI.URLBreakpoint.Type.RegularExpression;
                 target.DOMDebuggerAgent.setXHRBreakpoint(breakpoint.url, isRegex);
             }
@@ -534,6 +549,9 @@
         if (breakpoint.disabled)
             target.DOMDebuggerAgent.removeURLBreakpoint(breakpoint.url);
         else {
+            if (!this._restoringBreakpoints && !WI.debuggerManager.breakpointsDisabledTemporarily)
+                WI.debuggerManager.breakpointsEnabled = true;
+
             let isRegex = breakpoint.type === WI.URLBreakpoint.Type.RegularExpression;
             target.DOMDebuggerAgent.setURLBreakpoint(breakpoint.url, isRegex);
         }

Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMManager.js (246522 => 246523)


--- trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMManager.js	2019-06-17 23:11:59 UTC (rev 246522)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/DOMManager.js	2019-06-17 23:42:41 UTC (rev 246523)
@@ -674,8 +674,12 @@
 
         if (breakpoint.disabled)
             target.DOMAgent.removeBreakpointForEventListener(eventListener.eventListenerId);
-        else
+        else {
+            if (!WI.debuggerManager.breakpointsDisabledTemporarily)
+                WI.debuggerManager.breakpointsEnabled = true;
+
             target.DOMAgent.setBreakpointForEventListener(eventListener.eventListenerId);
+        }
     }
 
     _handleEventBreakpointDisabledStateChanged(event)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to