diff --git a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/actions/ScratchAction.kt b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/actions/ScratchAction.kt index bf7a8cd7d47..aff99969d1a 100644 --- a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/actions/ScratchAction.kt +++ b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/actions/ScratchAction.kt @@ -8,13 +8,14 @@ package org.jetbrains.kotlin.idea.scratch.actions import com.intellij.openapi.actionSystem.AnAction import com.intellij.openapi.actionSystem.AnActionEvent import com.intellij.openapi.actionSystem.CommonDataKeys +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.fileEditor.impl.text.TextEditorProvider import org.jetbrains.kotlin.idea.scratch.getScratchFile import org.jetbrains.kotlin.idea.scratch.getScratchFileFromSelectedEditor import javax.swing.Icon abstract class ScratchAction(message: String, icon: Icon) : AnAction(message, message, icon) { - override fun update(e: AnActionEvent) { + override fun update(e: AnActionEvent) = ApplicationManager.getApplication().invokeLater { val scratchFile = e.getData(CommonDataKeys.EDITOR) ?.let { TextEditorProvider.getInstance().getTextEditor(it).getScratchFile() } ?: e.project?.let { getScratchFileFromSelectedEditor(it) }