From 313b437b36d179def67aa66b032b8ca717e100c7 Mon Sep 17 00:00:00 2001 From: Matthew Bastien Date: Fri, 3 Feb 2017 09:47:03 -0500 Subject: [PATCH] NewLaunchConfig* notify listeners when table entries are selected The NewLaunchConfig*Page classes don't notify their listeners when they automatically select a type or mode with table.select(). This causes the NewLaunchConfigEditPage to have a "null" type if the user doesn't explicitly click on one and thus opens the default page. Added in calls to table.notifyListeners() in order to fix this. Verified that the launch config edit page opens appropriately even if there is no explicit selection by the user Change-Id: I5fbafd2f43d7c0951e929f5dcbfc57fcccd18db6 Signed-off-by: Matthew Bastien --- .../ui/internal/dialogs/NewLaunchConfigModePage.java | 4 +++- .../ui/internal/dialogs/NewLaunchConfigTypePage.java | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigModePage.java b/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigModePage.java index 44b576a7e3d..be8d68053c8 100644 --- a/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigModePage.java +++ b/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigModePage.java @@ -83,6 +83,9 @@ public class NewLaunchConfigModePage extends WizardPage { if (!hasDebug) { table.select(0); } + + // We're guaranteed to have made a selection here + table.notifyListeners(SWT.Selection, null); } setControl(comp); @@ -101,7 +104,6 @@ public class NewLaunchConfigModePage extends WizardPage { item.setData(group); } - public ILaunchGroup getSelectedGroup() { return (ILaunchGroup) table.getSelection()[0].getData(); } diff --git a/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigTypePage.java b/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigTypePage.java index 4e42cf2c8e9..bb6fda8a8c5 100644 --- a/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigTypePage.java +++ b/bundles/org.eclipse.launchbar.ui/src/org/eclipse/launchbar/ui/internal/dialogs/NewLaunchConfigTypePage.java @@ -78,6 +78,7 @@ public class NewLaunchConfigTypePage extends WizardPage { if (haveItems) { table.select(0); + table.notifyListeners(SWT.Selection, null); } setPageComplete(haveItems); } @@ -85,9 +86,9 @@ public class NewLaunchConfigTypePage extends WizardPage { public void addTypeSelectionListener(SelectionListener listener) { table.addSelectionListener(listener); } - + public ILaunchConfigurationType getSelectedType() { return (ILaunchConfigurationType) table.getSelection()[0].getData(); } - + }