mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
do not propose lambdas if body is not on the line
This commit is contained in:
@@ -63,6 +63,7 @@ import com.intellij.ui.classFilter.ClassFilter;
|
||||
import com.intellij.ui.content.Content;
|
||||
import com.intellij.unscramble.ThreadDumpPanel;
|
||||
import com.intellij.unscramble.ThreadState;
|
||||
import com.intellij.util.DocumentUtil;
|
||||
import com.intellij.util.SmartList;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.xdebugger.XSourcePosition;
|
||||
@@ -798,7 +799,7 @@ public abstract class DebuggerUtilsEx extends DebuggerUtils {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
PsiElement element = position.getElementAt();
|
||||
final TextRange lineRange = new TextRange(document.getLineStartOffset(line), document.getLineEndOffset(line));
|
||||
final TextRange lineRange = DocumentUtil.getLineTextRange(document, line);
|
||||
do {
|
||||
PsiElement parent = element.getParent();
|
||||
if (parent == null || (parent.getTextOffset() < lineRange.getStartOffset())) {
|
||||
@@ -813,7 +814,8 @@ public abstract class DebuggerUtilsEx extends DebuggerUtils {
|
||||
@Override
|
||||
public void visitLambdaExpression(PsiLambdaExpression expression) {
|
||||
super.visitLambdaExpression(expression);
|
||||
if (!onlyOnTheLine || lineRange.intersects(expression.getTextRange())) {
|
||||
PsiElement body = expression.getBody();
|
||||
if (!onlyOnTheLine || (body != null && lineRange.intersects(body.getTextRange()))) {
|
||||
lambdas.add(expression);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user