mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
no word completion in autopopups in java, properties and generic comments (WI-3437)
This commit is contained in:
@@ -19,6 +19,8 @@
|
||||
*/
|
||||
package com.intellij.lang.java;
|
||||
|
||||
import com.intellij.codeInsight.completion.CompletionProcess;
|
||||
import com.intellij.codeInsight.completion.CompletionService;
|
||||
import com.intellij.lang.WordCompletionElementFilter;
|
||||
import com.intellij.psi.JavaDocTokenType;
|
||||
import com.intellij.psi.JavaTokenType;
|
||||
@@ -30,6 +32,11 @@ public class JavaWordCompletionFilter implements WordCompletionElementFilter {
|
||||
JavaDocTokenType.DOC_COMMENT_DATA, JavaTokenType.STRING_LITERAL);
|
||||
|
||||
public boolean isWordCompletionEnabledIn(final IElementType element) {
|
||||
final CompletionProcess process = CompletionService.getCompletionService().getCurrentCompletion();
|
||||
if (process != null && process.isAutopopupCompletion()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return ENABLED_TOKENS.contains(element);
|
||||
}
|
||||
}
|
||||
@@ -19,10 +19,17 @@
|
||||
*/
|
||||
package com.intellij.lang;
|
||||
|
||||
import com.intellij.codeInsight.completion.CompletionProcess;
|
||||
import com.intellij.codeInsight.completion.CompletionService;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
|
||||
public class DefaultWordCompletionFilter implements WordCompletionElementFilter {
|
||||
public boolean isWordCompletionEnabledIn(final IElementType element) {
|
||||
final CompletionProcess process = CompletionService.getCompletionService().getCurrentCompletion();
|
||||
if (process != null && process.isAutopopupCompletion()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
final ParserDefinition parserDefinition = LanguageParserDefinitions.INSTANCE.forLanguage(element.getLanguage());
|
||||
return parserDefinition != null && parserDefinition.getCommentTokens().contains(element);
|
||||
}
|
||||
|
||||
+7
@@ -19,12 +19,19 @@
|
||||
*/
|
||||
package com.intellij.lang.properties;
|
||||
|
||||
import com.intellij.codeInsight.completion.CompletionProcess;
|
||||
import com.intellij.codeInsight.completion.CompletionService;
|
||||
import com.intellij.lang.DefaultWordCompletionFilter;
|
||||
import com.intellij.lang.properties.parsing.PropertiesElementTypes;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
|
||||
public class PropertiesWordCompletionFilter extends DefaultWordCompletionFilter {
|
||||
public boolean isWordCompletionEnabledIn(final IElementType element) {
|
||||
final CompletionProcess process = CompletionService.getCompletionService().getCurrentCompletion();
|
||||
if (process != null && process.isAutopopupCompletion()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return super.isWordCompletionEnabledIn(element) || element == PropertiesElementTypes.PROPERTY;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user