From 0d9859483e43e67c6489c56f117e09717eb7c124 Mon Sep 17 00:00:00 2001 From: Axel Richard Date: Tue, 12 Dec 2017 17:23:41 +0100 Subject: Bug 528469 - Refresh LC tree when linking from PrototypeTab Change-Id: Icb820b5dec90f3c99e9cba2bf85cb729a7acba63 Signed-off-by: Axel Richard --- .../launchConfigurations/LaunchConfigurationsDialog.java | 8 +++++++- .../ui/org/eclipse/debug/ui/ProtoypeTab.java | 14 ++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java index e889e8d76..baef40735 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java @@ -1059,6 +1059,12 @@ public class LaunchConfigurationsDialog extends TitleAreaDialog implements ILaun int ret = showUnsavedChangesDialog(); if(ret == IDialogConstants.YES_ID) { fTabViewer.handleApplyPressed(); + ILaunchConfigurationTab[] tabs = getTabs(); + if (tabs != null) { + for (ILaunchConfigurationTab tab : tabs) { + tab.postApply(); + } + } fTabViewer.setInput(newInput); } else if(ret == IDialogConstants.NO_ID) { @@ -1370,7 +1376,7 @@ public class LaunchConfigurationsDialog extends TitleAreaDialog implements ILaun * * @since 3.13 */ - protected void refreshLaunchConfigurationView() { + public void refreshLaunchConfigurationView() { fLaunchConfigurationView.getTreeViewer().refresh(); } diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ProtoypeTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ProtoypeTab.java index d852b6979..f751a1bdd 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ProtoypeTab.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ProtoypeTab.java @@ -26,6 +26,7 @@ import org.eclipse.debug.internal.ui.DebugUIPlugin; import org.eclipse.debug.internal.ui.IDebugHelpContextIds; import org.eclipse.debug.internal.ui.IInternalDebugUIConstants; import org.eclipse.debug.internal.ui.SWTFactory; +import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog; import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsMessages; import org.eclipse.jface.action.Action; import org.eclipse.jface.action.IMenuListener; @@ -523,6 +524,19 @@ public class ProtoypeTab extends AbstractLaunchConfigurationTab { public void performApply(ILaunchConfigurationWorkingCopy configuration) { } + /* + * (non-Javadoc) + * @see org.eclipse.debug.ui.ILaunchConfigurationTab#postApply() + */ + @Override + public void postApply() { + super.postApply(); + ILaunchConfigurationDialog launchConfigurationDialog = getLaunchConfigurationDialog(); + if (launchConfigurationDialog instanceof LaunchConfigurationsDialog) { + ((LaunchConfigurationsDialog) launchConfigurationDialog).refreshLaunchConfigurationView(); + } + } + /* * (non-Javadoc) * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName() -- cgit v1.2.3