Configuration: Fix API version UI update on language version change

#KT-21979 Fixed
 #KT-21980 Fixed
This commit is contained in:
Alexey Sedunov
2017-12-26 14:54:28 +03:00
parent 9d1fbbd1c6
commit 75ce68197f
2 changed files with 9 additions and 7 deletions
@@ -129,7 +129,7 @@ public class KotlinCompilerConfigurableTab implements SearchableConfigurable, Co
new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
restrictAPIVersions(getSelectedLanguageVersionView().getVersion());
restrictAPIVersions(getSelectedLanguageVersionView());
}
}
);
@@ -308,8 +308,10 @@ public class KotlinCompilerConfigurableTab implements SearchableConfigurable, Co
}
@SuppressWarnings("unchecked")
public void restrictAPIVersions(LanguageVersion upperBound) {
LanguageVersion selectedAPIVersion = getSelectedAPIVersionView().getVersion();
public void restrictAPIVersions(VersionView upperBoundView) {
VersionView selectedAPIView = getSelectedAPIVersionView();
LanguageVersion selectedAPIVersion = selectedAPIView.getVersion();
LanguageVersion upperBound = upperBoundView.getVersion();
List<VersionView> permittedAPIVersions = new ArrayList<>(LanguageVersion.values().length + 1);
if (isLessOrEqual(VersionView.LatestStable.INSTANCE.getVersion(), upperBound)) {
permittedAPIVersions.add(VersionView.LatestStable.INSTANCE);
@@ -324,8 +326,8 @@ public class KotlinCompilerConfigurableTab implements SearchableConfigurable, Co
);
apiVersionComboBox.setSelectedItem(
VersionComparatorUtil.compare(selectedAPIVersion.getVersionString(), upperBound.getVersionString()) <= 0
? selectedAPIVersion
: ApiVersion.createByLanguageVersion(upperBound)
? selectedAPIView
: upperBoundView
);
}
@@ -552,7 +554,7 @@ public class KotlinCompilerConfigurableTab implements SearchableConfigurable, Co
public void reset() {
reportWarningsCheckBox.setSelected(!commonCompilerArguments.getSuppressWarnings());
languageVersionComboBox.setSelectedItem(KotlinFacetSettingsKt.getLanguageVersionView(commonCompilerArguments));
restrictAPIVersions(getSelectedLanguageVersionView().getVersion());
restrictAPIVersions(getSelectedLanguageVersionView());
apiVersionComboBox.setSelectedItem(KotlinFacetSettingsKt.getApiVersionView(commonCompilerArguments));
coroutineSupportComboBox.setSelectedItem(CoroutineSupport.byCompilerArguments(commonCompilerArguments));
additionalArgsOptionsField.setText(compilerSettings.getAdditionalArguments());
@@ -236,7 +236,7 @@ class KotlinFacetEditorGeneralTab(
private fun restrictAPIVersions() {
with(editor.compilerConfigurable) {
restrictAPIVersions(selectedLanguageVersionView.version)
restrictAPIVersions(selectedLanguageVersionView)
}
}