diff --git a/debug/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java b/debug/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java index 1db528f869f..936b420e4fb 100644 --- a/debug/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java +++ b/debug/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java @@ -38,6 +38,7 @@ import org.eclipse.core.runtime.jobs.Job; import org.eclipse.debug.core.DebugPlugin; import org.eclipse.debug.core.ILaunch; +import org.eclipse.debug.core.ILaunchListener; import org.eclipse.debug.core.commands.IRestartHandler; import org.eclipse.debug.core.model.IDebugTarget; import org.eclipse.debug.core.model.IProcess; @@ -143,7 +144,8 @@ public class LaunchView extends AbstractDebugView implements ISelectionChangedListener, IPerspectiveListener2, IPageListener, IShowInTarget, IShowInSource, - IShowInTargetList, IPartListener2, IViewerUpdateListener, IContextManagerListener, IModelChangedListener + IShowInTargetList, IPartListener2, IViewerUpdateListener, IContextManagerListener, IModelChangedListener, + ILaunchListener { public static final String ID_CONTEXT_ACTIVITY_BINDINGS = "contextActivityBindings"; //$NON-NLS-1$ @@ -883,6 +885,7 @@ private void commonInit(IViewSite site) { site.getPage().addPartListener((IPartListener2) this); site.getWorkbenchWindow().addPageListener(this); site.getWorkbenchWindow().addPerspectiveListener(this); + DebugPlugin.getDefault().getLaunchManager().addLaunchListener(this); } private void preferenceInit(IViewSite site) { @@ -1058,6 +1061,7 @@ public void setDebugToolbarInView(boolean show) { @Override public void dispose() { + DebugPlugin.getDefault().getLaunchManager().removeLaunchListener(this); fContextService.removeContextManagerListener(this); getSite().getSelectionProvider().removeSelectionChangedListener(this); DebugUITools.getDebugContextManager().getContextService(getSite().getWorkbenchWindow()).removeDebugContextProvider(fContextProviderProxy); @@ -1398,6 +1402,22 @@ public void partHidden(IWorkbenchPartReference partRef) { public void partInputChanged(IWorkbenchPartReference partRef) { } + @Override + public void launchAdded(ILaunch launch) { + IWorkbenchSiteProgressService progressService = getSite().getAdapter(IWorkbenchSiteProgressService.class); + if (progressService != null) { + progressService.warnOfContentChange(); + } + } + + @Override + public void launchChanged(ILaunch launch) { + } + + @Override + public void launchRemoved(ILaunch launch) { + } + @Override protected void becomesVisible() { super.becomesVisible();