[project wizard] correctly determine if code is running inside Project Structure dialog (EA-255178)

Actually ProjectStructureConfigurable.getInstance() returns non-null value even if Project Structure dialog is closed, so should take ModifiableModuleModel from it.

GitOrigin-RevId: a6f3283703d5f7a2f3a398830d70cb45c9bf97eb
This commit is contained in:
Nikolay Chashnikov
2021-02-17 19:09:58 +00:00
committed by intellij-monorepo-bot
parent 20c7c3535c
commit 0876dda522
@@ -6,6 +6,7 @@ import com.intellij.ide.JavaUiBundle;
import com.intellij.ide.highlighter.ModuleFileType;
import com.intellij.ide.util.BrowseFilesListener;
import com.intellij.ide.util.projectWizard.*;
import com.intellij.openapi.module.ModifiableModuleModel;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleManager;
import com.intellij.openapi.options.ConfigurationException;
@@ -206,8 +207,10 @@ public class ModuleNameLocationComponent implements ModuleNameLocationSettings {
final String moduleName = getModuleName();
final Module module;
final ProjectStructureConfigurable fromConfigurable = ProjectStructureConfigurable.getInstance(project);
if (fromConfigurable != null) {
module = fromConfigurable.getModulesConfig().getModule(moduleName);
ModifiableModuleModel modifiableModel = fromConfigurable != null ? fromConfigurable.getContext().getModulesConfigurator().getModuleModel()
: null;
if (modifiableModel != null) {
module = modifiableModel.findModuleByName(moduleName);
}
else {
module = ModuleManager.getInstance(project).findModuleByName(moduleName);