From af5998ac94fd53929530c440d214ecc0f2bda3e7 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Mon, 15 Aug 2011 14:40:51 -0400 Subject: [PATCH] Fixed losing selection after "Restore Defaults" in some cases. --- .../settings/providers/LanguageSettingsProviderTab.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingsProviderTab.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingsProviderTab.java index 7d9f26622e2..5b3f2a35f12 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingsProviderTab.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/language/settings/providers/LanguageSettingsProviderTab.java @@ -477,7 +477,9 @@ public class LanguageSettingsProviderTab extends AbstractCPropertyTab { String selectedId = selectedProvider!=null ? selectedProvider.getId() : null; // update viewer if the list of providers changed + int pos = tableProviders.getSelectionIndex(); tableProvidersViewer.setInput(presentedProviders); + tableProviders.setSelection(pos); ICConfigurationDescription cfgDescription = getConfigurationDescription(); if (cfgDescription!=null) { @@ -544,7 +546,10 @@ public class LanguageSettingsProviderTab extends AbstractCPropertyTab { // renders better when using temporary presentedProviders = providers; + + int pos = tableProviders.getSelectionIndex(); tableProvidersViewer.setInput(presentedProviders); + tableProviders.setSelection(pos); } private ICOptionPage createOptionsPage(ILanguageSettingsProvider provider, ICConfigurationDescription cfgDescription) { @@ -891,7 +896,6 @@ public class LanguageSettingsProviderTab extends AbstractCPropertyTab { } } else if (page.isForPrefs()) { - int pos = tableProviders.getSelectionIndex(); List providers = new ArrayList(presentedProviders); for (int i=0;i