From 5c113a42371cffeac18568f7181f251e276fa7e6 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Tue, 9 Aug 2016 20:08:25 +0200 Subject: [PATCH] correct fix for invoking 'safe delete' refactoring outside of write action (EA-80766 - E: BaseRefactoringProcessor.run) --- .../kotlin/idea/inspections/UnusedSymbolInspection.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt index 1492c700c2b..aaf67fea070 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt @@ -64,6 +64,7 @@ import java.awt.Insets import java.util.* import javax.swing.JComponent import javax.swing.JPanel +import javax.swing.SwingUtilities class UnusedSymbolInspection : AbstractKotlinInspection() { companion object { @@ -313,10 +314,10 @@ class SafeDeleteFix(val declaration: KtDeclaration) : LocalQuickFix { override fun getFamilyName() = "Safe delete" - fun startInWriteAction(): Boolean = false - override fun applyFix(project: Project, descriptor: ProblemDescriptor) { if (!FileModificationService.getInstance().prepareFileForWrite(declaration.containingFile)) return - SafeDeleteHandler.invoke(project, arrayOf(declaration), false) + SwingUtilities.invokeLater { + SafeDeleteHandler.invoke(project, arrayOf(declaration), false) + } } }