diff --git a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/settings/KotlinScriptingSettings.kt b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/settings/KotlinScriptingSettings.kt index 36f41e6b6ca..b73097da53f 100644 --- a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/settings/KotlinScriptingSettings.kt +++ b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/settings/KotlinScriptingSettings.kt @@ -59,10 +59,12 @@ class KotlinScriptingSettings : PersistentStateComponent { } override fun loadState(state: Element) { - isAutoReloadEnabled = - state.getAttributeBooleanValue(KotlinScriptingSettings::isAutoReloadEnabled.name) - suppressDefinitionsCheck = - state.getAttributeBooleanValue(KotlinScriptingSettings::suppressDefinitionsCheck.name) + state.getOptionTag(KotlinScriptingSettings::isAutoReloadEnabled.name)?.let { + isAutoReloadEnabled = it + } + state.getOptionTag(KotlinScriptingSettings::suppressDefinitionsCheck.name)?.let { + suppressDefinitionsCheck = it + } val scriptDefinitionsList = state.getChildren(SCRIPT_DEFINITION_TAG) for (scriptDefinitionElement in scriptDefinitionsList) { @@ -124,6 +126,9 @@ class KotlinScriptingSettings : PersistentStateComponent { return KotlinScriptDefinitionValue(order, isEnabled) } + private fun Element.getOptionTag(name: String) = + getChildren("option").firstOrNull { it.getAttribute("name").value == name }?.getAttributeBooleanValue("value") + companion object { fun getInstance(project: Project): KotlinScriptingSettings = ServiceManager.getService(project, KotlinScriptingSettings::class.java)