From e10c79617a4ce1cef4a021041ac7bf4e634c7a96 Mon Sep 17 00:00:00 2001 From: Natalia Ukhorskaya Date: Mon, 11 Aug 2014 12:53:07 +0400 Subject: [PATCH] Alt+Click: set correct context element for code fragments from Alt+Click and Watch Points #KT-5598 Fixed --- .../plugin/debugger/evaluate/KotlinCodeFragmentFactory.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/debugger/evaluate/KotlinCodeFragmentFactory.kt b/idea/src/org/jetbrains/jet/plugin/debugger/evaluate/KotlinCodeFragmentFactory.kt index 850b9375f44..494d37143f2 100644 --- a/idea/src/org/jetbrains/jet/plugin/debugger/evaluate/KotlinCodeFragmentFactory.kt +++ b/idea/src/org/jetbrains/jet/plugin/debugger/evaluate/KotlinCodeFragmentFactory.kt @@ -50,7 +50,8 @@ class KotlinCodeFragmentFactory: CodeFragmentFactory() { override fun isContextAccepted(contextElement: PsiElement?): Boolean { if (contextElement is PsiCodeBlock) { - return isContextAccepted(contextElement.getContext()) + // PsiCodeBlock -> DummyHolder -> originalElement + return isContextAccepted(contextElement.getContext()?.getContext()) } return contextElement?.getLanguage() == JetFileType.INSTANCE.getLanguage() } @@ -64,7 +65,7 @@ class KotlinCodeFragmentFactory: CodeFragmentFactory() { if (elementAt == null) return null if (elementAt is PsiCodeBlock) { - return getContextElement(elementAt.getContext()) + return getContextElement(elementAt.getContext()?.getContext()) } val expressionAtOffset = PsiTreeUtil.findElementOfClassAtOffset(elementAt.getContainingFile()!!, elementAt.getTextOffset(), javaClass(), false)