From f00b113421b13b8049edbae49367d22134856e54 Mon Sep 17 00:00:00 2001 From: isidor Date: Tue, 19 Apr 2016 15:35:22 +0200 Subject: [PATCH] debug polish: remove debugService.setBreakpointsForModel --- .../parts/debug/browser/debugEditorModelManager.ts | 8 +++++++- src/vs/workbench/parts/debug/common/debug.ts | 1 - .../parts/debug/electron-browser/debugService.ts | 6 ------ .../workbench/parts/debug/test/common/mockDebugService.ts | 2 -- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts b/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts index f6da28ed3ac..9b163317f94 100644 --- a/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts +++ b/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts @@ -4,6 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import nls = require('vs/nls'); +import { TPromise } from 'vs/base/common/winjs.base'; import objects = require('vs/base/common/objects'); import lifecycle = require('vs/base/common/lifecycle'); import editorcommon = require('vs/editor/common/editorCommon'); @@ -223,7 +224,12 @@ export class DebugEditorModelManager implements IWorkbenchContribution { } modelData.dirty = !!this.debugService.getActiveSession(); - this.debugService.setBreakpointsForModel(modelUrl, data); + const toRemove = this.debugService.getModel().getBreakpoints() + .filter(bp => bp.source.uri.toString() === modelUrl.toString()); + + TPromise.join(toRemove.map(bp => this.debugService.removeBreakpoints(bp.getId()))).then(() => { + this.debugService.addBreakpoints(data); + }); } private onBreakpointsChange(): void { diff --git a/src/vs/workbench/parts/debug/common/debug.ts b/src/vs/workbench/parts/debug/common/debug.ts index 249163f25e0..5fb131c56f8 100644 --- a/src/vs/workbench/parts/debug/common/debug.ts +++ b/src/vs/workbench/parts/debug/common/debug.ts @@ -304,7 +304,6 @@ export interface IDebugService { /** * General breakpoints manipulation. */ - setBreakpointsForModel(modelUri: uri, rawData: IRawBreakpoint[]): void; addBreakpoints(rawBreakpoints: IRawBreakpoint[]): TPromise; enableOrDisableAllBreakpoints(enabled: boolean): TPromise; toggleEnablement(element: IEnablement): TPromise; diff --git a/src/vs/workbench/parts/debug/electron-browser/debugService.ts b/src/vs/workbench/parts/debug/electron-browser/debugService.ts index a7455ccec87..457f2d6608e 100644 --- a/src/vs/workbench/parts/debug/electron-browser/debugService.ts +++ b/src/vs/workbench/parts/debug/electron-browser/debugService.ts @@ -426,12 +426,6 @@ export class DebugService implements debug.IDebugService { } } - public setBreakpointsForModel(modelUri: uri, rawData: debug.IRawBreakpoint[]): void { - this.model.removeBreakpoints( - this.model.getBreakpoints().filter(bp => bp.source.uri.toString() === modelUri.toString())); - this.model.addBreakpoints(rawData); - } - public enableOrDisableAllBreakpoints(enabled: boolean): TPromise{ this.model.enableOrDisableAllBreakpoints(enabled); return this.sendAllBreakpoints(); diff --git a/src/vs/workbench/parts/debug/test/common/mockDebugService.ts b/src/vs/workbench/parts/debug/test/common/mockDebugService.ts index c61235f8d1d..352476895eb 100644 --- a/src/vs/workbench/parts/debug/test/common/mockDebugService.ts +++ b/src/vs/workbench/parts/debug/test/common/mockDebugService.ts @@ -37,8 +37,6 @@ export class MockDebugService implements debug.IDebugService { return TPromise.as(null); } - public setBreakpointsForModel(modelUri: uri, rawData: debug.IRawBreakpoint[]): void {} - public addBreakpoints(rawBreakpoints: debug.IRawBreakpoint[]): TPromise { return TPromise.as(null); } -- GitLab