| Index: Source/devtools/front_end/sdk/BreakpointManager.js
|
| diff --git a/Source/devtools/front_end/sdk/BreakpointManager.js b/Source/devtools/front_end/sdk/BreakpointManager.js
|
| index e2fc7ed2ecf9e19492051a563e5a93c844530d4d..af33ae529a5bc48d3bfed6959dcc04cad805907f 100644
|
| --- a/Source/devtools/front_end/sdk/BreakpointManager.js
|
| +++ b/Source/devtools/front_end/sdk/BreakpointManager.js
|
| @@ -31,6 +31,7 @@
|
| /**
|
| * @constructor
|
| * @extends {WebInspector.Object}
|
| + * @implements {WebInspector.TargetManager.Observer}
|
| * @param {!WebInspector.Setting} breakpointStorage
|
| * @param {!WebInspector.Workspace} workspace
|
| * @param {!WebInspector.TargetManager} targetManager
|
| @@ -41,6 +42,7 @@ WebInspector.BreakpointManager = function(breakpointStorage, workspace, targetMa
|
| this._workspace = workspace;
|
| this._targetManager = targetManager;
|
|
|
| + this._breakpointsActive = true;
|
| this._breakpointsForUISourceCode = new Map();
|
| this._breakpointsForPrimaryUISourceCode = new Map();
|
| /** @type {!StringMultimap.<!WebInspector.BreakpointManager.Breakpoint>} */
|
| @@ -53,7 +55,8 @@ WebInspector.BreakpointManager = function(breakpointStorage, workspace, targetMa
|
|
|
| WebInspector.BreakpointManager.Events = {
|
| BreakpointAdded: "breakpoint-added",
|
| - BreakpointRemoved: "breakpoint-removed"
|
| + BreakpointRemoved: "breakpoint-removed",
|
| + BreakpointsActiveStateChanged: "BreakpointsActiveStateChanged"
|
| }
|
|
|
| WebInspector.BreakpointManager._sourceFileId = function(uiSourceCode)
|
| @@ -79,6 +82,20 @@ WebInspector.BreakpointManager._breakpointStorageId = function(sourceFileId, lin
|
| WebInspector.BreakpointManager.prototype = {
|
|
|
| /**
|
| + * @param {!WebInspector.Target} target
|
| + */
|
| + targetAdded: function(target) {
|
| + if (!this._breakpointsActive)
|
| + target.debuggerAgent().setBreakpointsActive(this._breakpointsActive);
|
| + },
|
| +
|
| + /**
|
| + * @param {!WebInspector.Target} target
|
| + */
|
| + targetRemoved: function(target) { },
|
| +
|
| +
|
| + /**
|
| * @param {string} sourceFileId
|
| * @return {!StringMap.<!WebInspector.BreakpointManager.Breakpoint>}
|
| */
|
| @@ -189,9 +206,7 @@ WebInspector.BreakpointManager.prototype = {
|
| */
|
| setBreakpoint: function(uiSourceCode, lineNumber, columnNumber, condition, enabled)
|
| {
|
| - var targets = this._targetManager.targets();
|
| - for (var i = 0; i < targets.length; ++i)
|
| - targets[i].debuggerModel.setBreakpointsActive(true);
|
| + this.setBreakpointsActive(true);
|
| return this._innerSetBreakpoint(uiSourceCode, lineNumber, columnNumber, condition, enabled);
|
| },
|
|
|
| @@ -403,6 +418,35 @@ WebInspector.BreakpointManager.prototype = {
|
| this.dispatchEventToListeners(WebInspector.BreakpointManager.Events.BreakpointRemoved, {breakpoint: breakpoint, uiLocation: uiLocation});
|
| },
|
|
|
| + /**
|
| + * @param {boolean} active
|
| + */
|
| + setBreakpointsActive: function(active)
|
| + {
|
| + if (this._breakpointsActive === active)
|
| + return;
|
| +
|
| + this._breakpointsActive = active;
|
| + var targets = WebInspector.targetManager.targets();
|
| + for (var i = 0; i < targets.length; ++i)
|
| + targets[i].debuggerAgent().setBreakpointsActive(active);
|
| +
|
| + this.dispatchEventToListeners(WebInspector.BreakpointManager.Events.BreakpointsActiveStateChanged, active);
|
| + },
|
| +
|
| + toggleBreakpointsActive: function()
|
| + {
|
| + this.setBreakpointsActive(!this._breakpointsActive);
|
| + },
|
| +
|
| + /**
|
| + * @return {boolean}
|
| + */
|
| + breakpointsActive: function()
|
| + {
|
| + return this._breakpointsActive;
|
| + },
|
| +
|
| __proto__: WebInspector.Object.prototype
|
| }
|
|
|
|
|