mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
do not overwrite user defined run configuration name (IDEA-67324)
This commit is contained in:
@@ -291,18 +291,20 @@ class RunConfigurable extends BaseConfigurable {
|
||||
}
|
||||
|
||||
private void installUpdateListeners(final SingleConfigurationConfigurable<RunConfiguration> info) {
|
||||
final boolean[] changed = new boolean[]{false};
|
||||
info.getEditor().addSettingsEditorListener(new SettingsEditorListener<RunnerAndConfigurationSettings>() {
|
||||
public void stateChanged(final SettingsEditor<RunnerAndConfigurationSettings> editor) {
|
||||
update();
|
||||
final RunConfiguration configuration = info.getConfiguration();
|
||||
if (configuration instanceof LocatableConfiguration) {
|
||||
final LocatableConfiguration runtimeConfiguration = (LocatableConfiguration)configuration;
|
||||
if (runtimeConfiguration.isGeneratedName()) {
|
||||
if (runtimeConfiguration.isGeneratedName() && !changed[0]) {
|
||||
try {
|
||||
final LocatableConfiguration snapshot = (LocatableConfiguration)editor.getSnapshot().getConfiguration();
|
||||
final String generatedName = snapshot instanceof RuntimeConfiguration? ((RuntimeConfiguration)snapshot).getGeneratedName() : snapshot.suggestedName();
|
||||
if (generatedName != null && generatedName.length() > 0) {
|
||||
info.setNameText(generatedName);
|
||||
changed[0] = false;
|
||||
}
|
||||
}
|
||||
catch (ConfigurationException ignore) {
|
||||
@@ -316,6 +318,7 @@ class RunConfigurable extends BaseConfigurable {
|
||||
info.addNameListener(new DocumentAdapter() {
|
||||
@Override
|
||||
protected void textChanged(DocumentEvent e) {
|
||||
changed[0] = true;
|
||||
update();
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user