diff --git a/idea/src/org/jetbrains/jet/plugin/debugger/KotlinSmartStepIntoHandler.kt b/idea/src/org/jetbrains/jet/plugin/debugger/KotlinSmartStepIntoHandler.kt index 34d4aae19f5..e63a3e4b150 100644 --- a/idea/src/org/jetbrains/jet/plugin/debugger/KotlinSmartStepIntoHandler.kt +++ b/idea/src/org/jetbrains/jet/plugin/debugger/KotlinSmartStepIntoHandler.kt @@ -39,6 +39,7 @@ import org.jetbrains.jet.plugin.codeInsight.CodeInsightUtils import com.intellij.psi.PsiDocumentManager import org.jetbrains.jet.lang.resolve.calls.callUtil.getResolvedCall import org.jetbrains.jet.lang.resolve.DescriptorToSourceUtils +import org.jetbrains.jet.plugin.refactoring.runReadAction public class KotlinSmartStepIntoHandler : JvmSmartStepIntoHandler() { @@ -191,7 +192,7 @@ public class KotlinSmartStepIntoHandler : JvmSmartStepIntoHandler() { override fun locationMatches(process: DebugProcessImpl, location: Location): Boolean { if (super.locationMatches(process, location)) return true - val containingFile = stepTarget.resolvedElement.getContainingFile() + val containingFile = runReadAction { stepTarget.resolvedElement.getContainingFile() } if (containingFile !is JetFile) return false val positionManager = process.getPositionManager() diff --git a/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt b/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt index 77354ffd243..65780593e61 100644 --- a/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt +++ b/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt @@ -106,32 +106,4 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() { val getterName = PropertyCodegen.getterName(Name.identifier(fieldName)) return objRef.referenceType().methodsByName(getterName)?.firstOrNull() } - - private fun shouldDisplay(context: EvaluationContext, objInstance: ObjectReference, field: Field): Boolean { - val isSynthetic = DebuggerUtils.isSynthetic(field) - when { - !SHOW_SYNTHETICS && isSynthetic, - !SHOW_STATIC && field.isStatic(), - !SHOW_STATIC_FINAL && field.isStatic() && field.isFinal() -> return false - SHOW_VAL_FIELDS_AS_LOCAL_VARIABLES && isSynthetic -> { - try { - val frameProxy = context.getFrameProxy() - if (frameProxy != null) { - val location = frameProxy.location() - if (location != null && - objInstance == context.getThisObject() && - objInstance.referenceType() == location.declaringType() && - field.name().startsWith(FieldDescriptorImpl.OUTER_LOCAL_VAR_FIELD_PREFIX) - ) { - return false - } - } - } - catch (ignored: EvaluateException) { - } - return true - } - else -> return true - } - } } \ No newline at end of file diff --git a/idea/tests/org/jetbrains/jet/plugin/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt b/idea/tests/org/jetbrains/jet/plugin/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt index 19275ece351..72fcaba10a2 100644 --- a/idea/tests/org/jetbrains/jet/plugin/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt +++ b/idea/tests/org/jetbrains/jet/plugin/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt @@ -58,6 +58,8 @@ import com.intellij.psi.PsiManager import com.intellij.debugger.DebuggerManagerEx import com.intellij.psi.PsiDocumentManager import com.intellij.openapi.application.ModalityState +import com.intellij.debugger.ui.tree.render.ClassRenderer +import com.intellij.debugger.settings.NodeRendererSettings public abstract class AbstractKotlinEvaluateExpressionTest : KotlinDebuggerTestBase() { private val logger = Logger.getLogger(javaClass())!! @@ -71,10 +73,15 @@ public abstract class AbstractKotlinEvaluateExpressionTest : KotlinDebuggerTestB } private var oldLogLevel: Level? = null + private var oldShowFqTypeNames = false override fun setUp() { super.setUp() + val classRenderer = NodeRendererSettings.getInstance()!!.getClassRenderer()!! + oldShowFqTypeNames = classRenderer.SHOW_FQ_TYPE_NAMES + classRenderer.SHOW_FQ_TYPE_NAMES = true + oldLogLevel = logger.getLevel() logger.setLevel(Level.DEBUG) logger.addAppender(appender) @@ -84,6 +91,8 @@ public abstract class AbstractKotlinEvaluateExpressionTest : KotlinDebuggerTestB logger.setLevel(oldLogLevel) logger.removeAppender(appender) + NodeRendererSettings.getInstance()!!.getClassRenderer()!!.SHOW_FQ_TYPE_NAMES = oldShowFqTypeNames + super.tearDown() } diff --git a/update_dependencies.xml b/update_dependencies.xml index 389004f616f..46f2f2f35cc 100644 --- a/update_dependencies.xml +++ b/update_dependencies.xml @@ -1,6 +1,6 @@ - - + +