From 7776aa77c82838d9e079cfba8d1b70649fb7e031 Mon Sep 17 00:00:00 2001 From: Natalia Ukhorskaya Date: Wed, 7 Oct 2015 13:34:35 +0300 Subject: [PATCH] Completion for codeFragments: do not add runtime types variants if receiver type is the same as runtime type because they are already added by regular completion --- .../kotlin/idea/codeInsight/ReferenceVariantsHelper.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt b/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt index a5d7d96aebf..7db2b98e9fe 100644 --- a/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt +++ b/idea/ide-common/src/org/jetbrains/kotlin/idea/codeInsight/ReferenceVariantsHelper.kt @@ -320,7 +320,9 @@ public class ReferenceVariantsHelper( val type = context.getType(receiver) if (type != null && TypeUtils.canHaveSubtypes(JetTypeChecker.DEFAULT, type)) { val evaluator = receiver.getContainingFile().getCopyableUserData(JetCodeFragment.RUNTIME_TYPE_EVALUATOR) - return evaluator?.invoke(receiver) + val runtimeType = evaluator?.invoke(receiver) + if (runtimeType == type) return null + return runtimeType } return type }