Call update for ScratchAction in EDT thread (EA-210180)
This commit is contained in:
@@ -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) }
|
||||
|
||||
Reference in New Issue
Block a user