New J2K : move resolve resolve out of EDT in shorten references processing
relates to #KT-31812
This commit is contained in:
+11
-6
@@ -5,15 +5,14 @@
|
||||
|
||||
package org.jetbrains.kotlin.nj2k.postProcessing.processings
|
||||
|
||||
import com.intellij.openapi.command.CommandProcessor
|
||||
import com.intellij.openapi.editor.RangeMarker
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.idea.core.ShortenReferences
|
||||
import org.jetbrains.kotlin.idea.util.ActionRunningMode
|
||||
import org.jetbrains.kotlin.nj2k.JKImportStorage
|
||||
import org.jetbrains.kotlin.nj2k.NewJ2kConverterContext
|
||||
import org.jetbrains.kotlin.nj2k.postProcessing.FileBasedPostProcessing
|
||||
import org.jetbrains.kotlin.nj2k.postProcessing.GeneralPostProcessing
|
||||
import org.jetbrains.kotlin.nj2k.postProcessing.PostProcessingOptions
|
||||
import org.jetbrains.kotlin.nj2k.postProcessing.runUndoTransparentActionInEdt
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.psi.KtQualifiedExpression
|
||||
|
||||
@@ -29,13 +28,19 @@ class ShortenReferenceProcessing : FileBasedPostProcessing() {
|
||||
}
|
||||
|
||||
override fun runProcessing(file: KtFile, allFiles: List<KtFile>, rangeMarker: RangeMarker?, converterContext: NewJ2kConverterContext) {
|
||||
runUndoTransparentActionInEdt(inWriteAction = false) {
|
||||
CommandProcessor.getInstance().runUndoTransparentAction {
|
||||
if (rangeMarker != null) {
|
||||
if (rangeMarker.isValid) {
|
||||
ShortenReferences.DEFAULT.process(file, rangeMarker.startOffset, rangeMarker.endOffset, filter)
|
||||
ShortenReferences.DEFAULT.process(
|
||||
file,
|
||||
rangeMarker.startOffset,
|
||||
rangeMarker.endOffset,
|
||||
filter,
|
||||
actionRunningMode = ActionRunningMode.RUN_IN_EDT
|
||||
)
|
||||
}
|
||||
} else {
|
||||
ShortenReferences.DEFAULT.process(file, filter)
|
||||
ShortenReferences.DEFAULT.process(file, filter, actionRunningMode = ActionRunningMode.RUN_IN_EDT)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user