diff options
author | Tor Norbye <tnorbye@google.com> | 2014-09-04 13:24:04 -0700 |
---|---|---|
committer | Tor Norbye <tnorbye@google.com> | 2014-09-04 13:24:04 -0700 |
commit | c3d3a90f6b4ead083d63e28e6b9fcea93d675678 (patch) | |
tree | fc0dcd722b6d445468dbe7dad13b4c11781b1cbe /java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java | |
parent | 1aa2e09bdbd413eacb677e9fa4b50630530d0656 (diff) | |
download | idea-c3d3a90f6b4ead083d63e28e6b9fcea93d675678.tar.gz |
Snapshot idea/138.1980 from git://git.jetbrains.org/idea/community.git
Change-Id: Ib567c9c152d770212a7a3db20fbf591c210920bd
Diffstat (limited to 'java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java')
-rw-r--r-- | java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java b/java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java index 6a7a57ba7670..c36630e3a973 100644 --- a/java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java +++ b/java/debugger/impl/src/com/intellij/debugger/ui/impl/watch/FieldDescriptorImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2014 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ import com.intellij.debugger.engine.evaluation.EvaluateException; import com.intellij.debugger.engine.evaluation.EvaluateExceptionUtil; import com.intellij.debugger.engine.evaluation.EvaluationContextImpl; import com.intellij.debugger.impl.DebuggerContextImpl; +import com.intellij.debugger.impl.DebuggerContextUtil; import com.intellij.debugger.impl.DebuggerSession; import com.intellij.debugger.impl.PositionUtil; import com.intellij.debugger.settings.NodeRendererSettings; @@ -73,6 +74,12 @@ public class FieldDescriptorImpl extends ValueDescriptorImpl implements FieldDes @SuppressWarnings({"HardCodedStringLiteral"}) @Nullable public SourcePosition getSourcePosition(final Project project, final DebuggerContextImpl context) { + return getSourcePosition(project, context, false); + } + + @SuppressWarnings({"HardCodedStringLiteral"}) + @Nullable + public SourcePosition getSourcePosition(final Project project, final DebuggerContextImpl context, boolean nearest) { if (context.getFrameProxy() == null) { return null; } @@ -95,6 +102,9 @@ public class FieldDescriptorImpl extends ValueDescriptorImpl implements FieldDes if (psiVariable == null) { return null; } + if (nearest) { + return DebuggerContextUtil.findNearest(context, psiVariable, aClass.getContainingFile()); + } return SourcePosition.createFromOffset(psiVariable.getContainingFile(), psiVariable.getTextOffset()); } else { @@ -125,6 +135,9 @@ public class FieldDescriptorImpl extends ValueDescriptorImpl implements FieldDes aClass = (PsiClass) aClass.getNavigationElement(); for (PsiField field : aClass.getFields()) { if (fieldName.equals(field.getName())) { + if (nearest) { + return DebuggerContextUtil.findNearest(context, field, aClass.getContainingFile()); + } return SourcePosition.createFromOffset(field.getContainingFile(), field.getTextOffset()); } } |