New J2K: force use old j2k for all not file/copy-paste conversions
This commit is contained in:
@@ -9,8 +9,8 @@ import com.intellij.lang.java.JavaLanguage
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.PsiExpression
|
||||
import com.intellij.psi.PsiMember
|
||||
import org.jetbrains.kotlin.idea.util.module
|
||||
import org.jetbrains.kotlin.j2k.ConverterSettings
|
||||
import org.jetbrains.kotlin.j2k.OldJavaToKotlinConverter
|
||||
import org.jetbrains.kotlin.psi.KtExpression
|
||||
import org.jetbrains.kotlin.psi.KtNamedDeclaration
|
||||
import org.jetbrains.kotlin.psi.KtPsiFactory
|
||||
@@ -21,13 +21,7 @@ fun PsiElement.j2kText(): String? =
|
||||
fun PsiElement.convertToKotlin(): org.jetbrains.kotlin.j2k.Result? {
|
||||
if (language != JavaLanguage.INSTANCE) return null
|
||||
|
||||
val j2kConverter =
|
||||
JavaToKotlinConverterFactory.createJavaToKotlinConverter(
|
||||
project,
|
||||
module,
|
||||
ConverterSettings.defaultSettings,
|
||||
IdeaJavaToKotlinServices
|
||||
)
|
||||
val j2kConverter = OldJavaToKotlinConverter(project, ConverterSettings.defaultSettings, IdeaJavaToKotlinServices)
|
||||
return j2kConverter.elementsToKotlin(listOf(this))
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -43,7 +43,7 @@ import org.jetbrains.kotlin.idea.core.util.getKotlinJvmRuntimeMarkerClass
|
||||
import org.jetbrains.kotlin.idea.debugger.evaluate.compilation.DebugLabelPropertyDescriptorProvider
|
||||
import org.jetbrains.kotlin.idea.debugger.getClassDescriptor
|
||||
import org.jetbrains.kotlin.idea.debugger.getContextElement
|
||||
import org.jetbrains.kotlin.idea.j2k.JavaToKotlinConverterFactory
|
||||
import org.jetbrains.kotlin.idea.j2k.J2kPostProcessor
|
||||
import org.jetbrains.kotlin.idea.j2k.convertToKotlin
|
||||
import org.jetbrains.kotlin.idea.j2k.j2k
|
||||
import org.jetbrains.kotlin.idea.j2k.j2kText
|
||||
@@ -259,7 +259,7 @@ class KotlinCodeFragmentFactory : CodeFragmentFactory() {
|
||||
kotlinCodeFragment.context
|
||||
)
|
||||
|
||||
AfterConversionPass(project, JavaToKotlinConverterFactory.createPostProcessor(formatCode = false))
|
||||
AfterConversionPass(project, J2kPostProcessor(formatCode = false))
|
||||
.run(
|
||||
convertedFragment!!,
|
||||
conversionContext,
|
||||
|
||||
@@ -49,14 +49,12 @@ import com.intellij.psi.util.PsiTreeUtil
|
||||
import org.jetbrains.kotlin.idea.KotlinFileType
|
||||
import org.jetbrains.kotlin.idea.core.util.toPsiFile
|
||||
import org.jetbrains.kotlin.idea.j2k.IdeaJavaToKotlinServices
|
||||
import org.jetbrains.kotlin.idea.j2k.J2kPostProcessor
|
||||
import org.jetbrains.kotlin.idea.j2k.JavaToKotlinConverterFactory
|
||||
import org.jetbrains.kotlin.idea.util.application.executeWriteCommand
|
||||
import org.jetbrains.kotlin.idea.util.application.runReadAction
|
||||
import org.jetbrains.kotlin.idea.util.isRunningInCidrIde
|
||||
import org.jetbrains.kotlin.j2k.ConversionType
|
||||
import org.jetbrains.kotlin.j2k.ConverterSettings
|
||||
import org.jetbrains.kotlin.j2k.FilesResult
|
||||
import org.jetbrains.kotlin.j2k.logJ2kConversionStatistics
|
||||
import org.jetbrains.kotlin.j2k.*
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.psi.UserDataProperty
|
||||
import java.io.File
|
||||
@@ -115,12 +113,17 @@ class JavaToKotlinAction : AnAction() {
|
||||
project: Project,
|
||||
module: Module,
|
||||
enableExternalCodeProcessing: Boolean = true,
|
||||
askExternalCodeProcessing: Boolean = true
|
||||
askExternalCodeProcessing: Boolean = true,
|
||||
forceUsingOldJ2k: Boolean = false
|
||||
): List<KtFile> {
|
||||
var converterResult: FilesResult? = null
|
||||
fun convert() {
|
||||
val converter =
|
||||
JavaToKotlinConverterFactory.createJavaToKotlinConverter(
|
||||
if (forceUsingOldJ2k) OldJavaToKotlinConverter(
|
||||
project,
|
||||
ConverterSettings.defaultSettings,
|
||||
IdeaJavaToKotlinServices
|
||||
) else JavaToKotlinConverterFactory.createJavaToKotlinConverter(
|
||||
project,
|
||||
module,
|
||||
ConverterSettings.defaultSettings,
|
||||
@@ -128,7 +131,8 @@ class JavaToKotlinAction : AnAction() {
|
||||
)
|
||||
converterResult = converter.filesToKotlin(
|
||||
javaFiles,
|
||||
JavaToKotlinConverterFactory.createPostProcessor(formatCode = true),
|
||||
if (forceUsingOldJ2k) J2kPostProcessor(formatCode = true)
|
||||
else JavaToKotlinConverterFactory.createPostProcessor(formatCode = true),
|
||||
progress = ProgressManager.getInstance().progressIndicator!!
|
||||
)
|
||||
}
|
||||
|
||||
@@ -188,7 +188,13 @@ class KotlinCreateTestIntention : SelfTargetingRangeIntention<KtNamedDeclaration
|
||||
getDocument(generatedFile)?.let { doPostponedOperationsAndUnblockDocument(it) }
|
||||
}
|
||||
|
||||
JavaToKotlinAction.convertFiles(listOf(generatedFile), project, srcModule, false).singleOrNull()
|
||||
JavaToKotlinAction.convertFiles(
|
||||
listOf(generatedFile),
|
||||
project,
|
||||
srcModule,
|
||||
false,
|
||||
forceUsingOldJ2k = true
|
||||
).singleOrNull()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user