mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
don't focus autopopup on non-qualified references in groovy shell (IDEA-82953)
This commit is contained in:
@@ -39,7 +39,7 @@ import com.intellij.openapi.roots.ui.configuration.ModulesAlphaComparator;
|
||||
import com.intellij.openapi.ui.popup.JBPopupFactory;
|
||||
import com.intellij.openapi.ui.popup.PopupStep;
|
||||
import com.intellij.openapi.ui.popup.util.BaseListPopupStep;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.util.PlatformIcons;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.plugins.groovy.GroovyFileType;
|
||||
@@ -54,6 +54,7 @@ import java.util.*;
|
||||
public class GroovyShellAction extends DumbAwareAction {
|
||||
|
||||
private static final String GROOVY_SHELL_LAST_MODULE = "Groovy.Shell.LastModule";
|
||||
public static final Key<Boolean> GROOVY_SHELL_FILE = Key.create("GROOVY_SHELL_FILE");
|
||||
|
||||
private static List<Module> getGroovyCompatibleModules(Project project) {
|
||||
ArrayList<Module> result = new ArrayList<Module>();
|
||||
@@ -149,6 +150,7 @@ public class GroovyShellAction extends DumbAwareAction {
|
||||
|
||||
GroovyFileImpl file = (GroovyFileImpl)res.getConsole().getFile();
|
||||
assert file.getContext() == null;
|
||||
file.putUserData(GROOVY_SHELL_FILE, Boolean.TRUE);
|
||||
|
||||
file.setContext(shellRunner.getContext(module));
|
||||
|
||||
|
||||
+4
@@ -20,6 +20,7 @@ import com.intellij.psi.PsiReference;
|
||||
import com.intellij.util.ThreeState;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.plugins.groovy.console.GroovyShellAction;
|
||||
import org.jetbrains.plugins.groovy.lang.lexer.TokenSets;
|
||||
import org.jetbrains.plugins.groovy.lang.psi.GrReferenceElement;
|
||||
import org.jetbrains.plugins.groovy.lang.psi.api.statements.GrForStatement;
|
||||
@@ -55,6 +56,9 @@ public class GroovyCompletionConfidence extends CompletionConfidence {
|
||||
final GrExpression qualifier = ref.getQualifierExpression();
|
||||
if (qualifier == null) {
|
||||
if (isPossibleClosureParameter(ref)) return ThreeState.NO;
|
||||
if (parameters.getOriginalFile().getUserData(GroovyShellAction.GROOVY_SHELL_FILE) == Boolean.TRUE) {
|
||||
return ThreeState.NO;
|
||||
}
|
||||
|
||||
GrExpression runtimeQualifier = PsiImplUtil.getRuntimeQualifier(ref);
|
||||
if (runtimeQualifier != null && runtimeQualifier.getType() == null) {
|
||||
|
||||
Reference in New Issue
Block a user