diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/changeSignature/KotlinChangeSignatureProcessor.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/changeSignature/KotlinChangeSignatureProcessor.kt index ce6a22f61b0..5a0d438947e 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/changeSignature/KotlinChangeSignatureProcessor.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/changeSignature/KotlinChangeSignatureProcessor.kt @@ -45,6 +45,16 @@ class KotlinChangeSignatureProcessor( val ktChangeInfo get() = changeInfo.delegate!! + override fun setPrepareSuccessfulSwingThreadCallback(callback: Runnable?) { + val actualCallback = if (callback != null) { + Runnable { + callback.run() + setPrepareSuccessfulSwingThreadCallback(null) + } + } else null + super.setPrepareSuccessfulSwingThreadCallback(actualCallback) + } + override fun createUsageViewDescriptor(usages: Array): UsageViewDescriptor { val subject = if (ktChangeInfo.kind.isConstructor) "constructor" else "function" return KotlinUsagesViewDescriptor(myChangeInfo.method, RefactoringBundle.message("0.to.change.signature", subject))