Chromium Code Reviews| Index: Source/devtools/front_end/sdk/DebuggerModel.js |
| diff --git a/Source/devtools/front_end/sdk/DebuggerModel.js b/Source/devtools/front_end/sdk/DebuggerModel.js |
| index eb3c6fb42801249a54453207186efec3a9f7a88b..f5d45387a51d801c079178560ba270e850409fcc 100644 |
| --- a/Source/devtools/front_end/sdk/DebuggerModel.js |
| +++ b/Source/devtools/front_end/sdk/DebuggerModel.js |
| @@ -48,6 +48,8 @@ WebInspector.DebuggerModel = function(target) |
| this._scriptsBySourceURL = new StringMap(); |
| this._breakpointsActive = true; |
| + /** @type {!StringMap.<!WebInspector.DebuggerModel.BreakpointListener>} */ |
| + this._breakpointListenerById = new StringMap(); |
|
vsevik
2014/06/05 15:48:29
Let's have this._breakpointResolvedEventTarget = n
sergeyv
2014/06/06 11:44:53
Done.
|
| WebInspector.settings.pauseOnExceptionEnabled.addChangeListener(this._pauseOnExceptionStateChanged, this); |
| WebInspector.settings.pauseOnCaughtException.addChangeListener(this._pauseOnExceptionStateChanged, this); |
| @@ -80,7 +82,6 @@ WebInspector.DebuggerModel.Events = { |
| DebuggerResumed: "DebuggerResumed", |
| ParsedScriptSource: "ParsedScriptSource", |
| FailedToParseScriptSource: "FailedToParseScriptSource", |
| - BreakpointResolved: "BreakpointResolved", |
| GlobalObjectCleared: "GlobalObjectCleared", |
| CallFrameSelected: "CallFrameSelected", |
| ConsoleCommandEvaluatedInSelectedCallFrame: "ConsoleCommandEvaluatedInSelectedCallFrame", |
| @@ -330,7 +331,11 @@ WebInspector.DebuggerModel.prototype = { |
| */ |
| _breakpointResolved: function(breakpointId, location) |
| { |
| - this.dispatchEventToListeners(WebInspector.DebuggerModel.Events.BreakpointResolved, {breakpointId: breakpointId, location: WebInspector.DebuggerModel.Location.fromPayload(this.target(), location)}); |
| + var breakpointListener = this._breakpointListenerById.get(breakpointId); |
| + if (breakpointListener) { |
| + var debuggerLocation = WebInspector.DebuggerModel.Location.fromPayload(this.target(), location); |
| + breakpointListener.breakpointResolved(debuggerLocation) |
| + } |
| }, |
| _globalObjectCleared: function() |
| @@ -706,6 +711,23 @@ WebInspector.DebuggerModel.prototype = { |
| } |
| }, |
| + /** |
| + * @param {!DebuggerAgent.BreakpointId} breakpointId |
| + * @param {!WebInspector.DebuggerModel.BreakpointListener} listener |
| + */ |
| + registerBreakpointListenerForId: function(breakpointId, listener) |
| + { |
| + this._breakpointListenerById.put(breakpointId, listener); |
| + }, |
| + |
| + /** |
| + * @param {!DebuggerAgent.BreakpointId} breakpointId |
| + */ |
| + unregisterBreakpointListenerForId: function(breakpointId) |
| + { |
| + this._breakpointListenerById.remove(breakpointId); |
| + }, |
| + |
| __proto__: WebInspector.TargetAwareObject.prototype |
| } |
| @@ -792,6 +814,21 @@ WebInspector.DebuggerDispatcher.prototype = { |
| } |
| /** |
| + * @interface |
| + */ |
| +WebInspector.DebuggerModel.BreakpointListener = function() { |
| +} |
| + |
| +WebInspector.DebuggerModel.BreakpointListener.prototype = { |
| + |
| + /** |
| + * @param {!WebInspector.DebuggerModel.Location} location |
| + */ |
| + breakpointResolved: function(location) { } |
| + |
| +} |
| + |
| +/** |
| * @constructor |
| * @implements {WebInspector.RawLocation} |
| * @extends {WebInspector.TargetAware} |