mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Got rid of spurious wrench overlay for workspace provider when no such
extension exist.
This commit is contained in:
parent
70d4b2a2a8
commit
424d15432e
2 changed files with 11 additions and 1 deletions
|
@ -13,6 +13,7 @@ package org.eclipse.cdt.core.language.settings.providers;
|
|||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.eclipse.cdt.core.CCorePlugin;
|
||||
import org.eclipse.cdt.core.model.ILanguage;
|
||||
|
@ -140,6 +141,14 @@ public class LanguageSettingsManager {
|
|||
return LanguageSettingsExtensionManager.getProviderCopy(provider, deep);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns list of provider id-s contributed by all extensions.
|
||||
* @return the provider id-s.
|
||||
*/
|
||||
public static Set<String> getExtensionProviderIds() {
|
||||
return LanguageSettingsExtensionManager.getExtensionProviderIds();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get language settings provider defined via extension point
|
||||
* {@code org.eclipse.cdt.core.LanguageSettingsProvider}.
|
||||
|
|
|
@ -159,7 +159,8 @@ public class LanguageSettingsProviderTab extends AbstractCPropertyTab {
|
|||
|
||||
private static boolean isReconfigured(ILanguageSettingsProvider provider) {
|
||||
if (provider instanceof ILanguageSettingsEditableProvider) {
|
||||
return ! LanguageSettingsManager.isEqualExtensionProvider(provider, false);
|
||||
return (LanguageSettingsManager.getExtensionProviderIds().contains(provider.getId()) &&
|
||||
! LanguageSettingsManager.isEqualExtensionProvider(provider, false));
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue