From f4b01b5f4751a36ae18b01cf270e20c6d369975e Mon Sep 17 00:00:00 2001 From: Natalia Ukhorskaya Date: Wed, 4 Jun 2014 18:07:27 +0400 Subject: [PATCH] Correct context element for watches --- .../plugin/debugger/evaluate/KotlinCodeFragmentFactory.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 904fd0125a0..850b9375f44 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,7 @@ class KotlinCodeFragmentFactory: CodeFragmentFactory() { override fun isContextAccepted(contextElement: PsiElement?): Boolean { if (contextElement is PsiCodeBlock) { - return contextElement.getContext()?.getContext()?.getLanguage() == JetFileType.INSTANCE.getLanguage() + return isContextAccepted(contextElement.getContext()) } return contextElement?.getLanguage() == JetFileType.INSTANCE.getLanguage() } @@ -63,6 +63,10 @@ class KotlinCodeFragmentFactory: CodeFragmentFactory() { fun getContextElement(elementAt: PsiElement?): PsiElement? { if (elementAt == null) return null + if (elementAt is PsiCodeBlock) { + return getContextElement(elementAt.getContext()) + } + val expressionAtOffset = PsiTreeUtil.findElementOfClassAtOffset(elementAt.getContainingFile()!!, elementAt.getTextOffset(), javaClass(), false) if (expressionAtOffset != null) { return expressionAtOffset