[java, completion] IJPL-207762 ImportQualifyAndInsertTypeParametersHandler is optional

GitOrigin-RevId: 7259b1874000b2ecdbdb3f72778520c9e2c9c0d3
This commit is contained in:
Max Medvedev
2025-10-14 23:17:16 +00:00
committed by intellij-monorepo-bot
parent 30c00f792c
commit 30ff1508fd
@@ -72,7 +72,7 @@ public class JavaMethodCallInsertHandler(
createDiamondInsertHandler(item),
ParenthInsertHandler(),
beforeHandler,
ImportQualifyAndInsertTypeParametersHandler(needImportOrQualify, needExplicitTypeParameters),
ImportQualifyAndInsertTypeParametersHandler.create(needImportOrQualify, needExplicitTypeParameters, item),
MethodCallInstallerHandler(),
MethodCallRegistrationHandler(),
NegationInsertHandler(),
@@ -194,10 +194,22 @@ private class ParenthInsertHandler : InsertHandler<JavaMethodCallElement> {
}
}
private class ImportQualifyAndInsertTypeParametersHandler(
private class ImportQualifyAndInsertTypeParametersHandler private constructor(
private val needImportOrQualify: Boolean,
private val needExplicitTypeParameters: Boolean,
) : InsertHandler<JavaMethodCallElement> {
companion object {
fun create(
needImportOrQualify: Boolean,
needExplicitTypeParameters: Boolean,
item: JavaMethodCallElement,
): InsertHandler<JavaMethodCallElement>? {
if (!needExplicitTypeParameters && item.helper == null) return null
return ImportQualifyAndInsertTypeParametersHandler(needImportOrQualify, needExplicitTypeParameters)
}
}
override fun handleInsert(context: InsertionContext, item: JavaMethodCallElement) {
val document = context.document
val file = context.file