mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-06 11:50:54 +07:00
disable autocompletion for live/postfix templates
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
import java.lang.Object;
|
||||
|
||||
public class Foo {
|
||||
void m() {
|
||||
new Object().instan<caret>
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
import java.lang.Object;
|
||||
|
||||
public class Foo {
|
||||
void m() {
|
||||
new Object().instan<caret>
|
||||
}
|
||||
}
|
||||
@@ -126,6 +126,13 @@ public class TemplatesCompletionTest extends CompletionAutoPopupTestCase {
|
||||
doAutoPopupTest("instanceof", null);
|
||||
}
|
||||
|
||||
public void testDoNotAutoCompleteCompletionElementIfTemplateUnique() {
|
||||
LiveTemplateCompletionContributor.ourShowTemplatesInTests = true;
|
||||
configureByFile();
|
||||
myFixture.completeBasic();
|
||||
checkResultByFile();
|
||||
}
|
||||
|
||||
public void testDoNotCompleteTemplateInMultiCaretMode() {
|
||||
LiveTemplateCompletionContributor.ourShowTemplatesInTests = true;
|
||||
configureByFile();
|
||||
|
||||
@@ -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.
|
||||
@@ -55,13 +55,13 @@ public enum AutoCompletionPolicy {
|
||||
return new PolicyDecorator(element, this);
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use direct call {@link LookupElement#getAutoCompletionPolicy()} instead
|
||||
*/
|
||||
@Nullable
|
||||
@Deprecated
|
||||
public static AutoCompletionPolicy getPolicy(LookupElement element) {
|
||||
final PolicyDecorator decorator = element.as(PolicyDecorator.CLASS_CONDITION_KEY);
|
||||
if (decorator != null) {
|
||||
return decorator.myPolicy;
|
||||
}
|
||||
return null;
|
||||
return element.getAutoCompletionPolicy();
|
||||
}
|
||||
|
||||
private static class PolicyDecorator extends LookupElementDecorator<LookupElement> {
|
||||
@@ -73,5 +73,9 @@ public enum AutoCompletionPolicy {
|
||||
myPolicy = policy;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AutoCompletionPolicy getAutoCompletionPolicy() {
|
||||
return myPolicy;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -80,6 +80,10 @@ public abstract class LookupElement extends UserDataHolderBase {
|
||||
public void handleInsert(InsertionContext context) {
|
||||
}
|
||||
|
||||
public AutoCompletionPolicy getAutoCompletionPolicy() {
|
||||
return AutoCompletionPolicy.SETTINGS_DEPENDENT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return getLookupString();
|
||||
|
||||
@@ -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.
|
||||
@@ -64,6 +64,11 @@ public abstract class LookupElementDecorator<T extends LookupElement> extends Lo
|
||||
myDelegate.handleInsert(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AutoCompletionPolicy getAutoCompletionPolicy() {
|
||||
return myDelegate.getAutoCompletionPolicy();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return myDelegate.toString();
|
||||
|
||||
@@ -390,17 +390,7 @@ public class CodeCompletionHandlerBase {
|
||||
|
||||
@Nullable
|
||||
private static AutoCompletionPolicy getAutocompletionPolicy(LookupElement element) {
|
||||
final AutoCompletionPolicy policy = AutoCompletionPolicy.getPolicy(element);
|
||||
if (policy != null) {
|
||||
return policy;
|
||||
}
|
||||
|
||||
final LookupItem item = element.as(LookupItem.CLASS_CONDITION_KEY);
|
||||
if (item != null) {
|
||||
return item.getAutoCompletionPolicy();
|
||||
}
|
||||
|
||||
return null;
|
||||
return element.getAutoCompletionPolicy();
|
||||
}
|
||||
|
||||
private static boolean isInsideIdentifier(final OffsetMap offsetMap) {
|
||||
|
||||
@@ -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.
|
||||
@@ -293,6 +293,7 @@ public class LookupItem<T> extends MutableLookupElement<T> implements Comparable
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AutoCompletionPolicy getAutoCompletionPolicy() {
|
||||
return myAutoCompletionPolicy;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2000-2013 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.
|
||||
@@ -15,6 +15,7 @@
|
||||
*/
|
||||
package com.intellij.codeInsight.template.impl;
|
||||
|
||||
import com.intellij.codeInsight.lookup.AutoCompletionPolicy;
|
||||
import com.intellij.codeInsight.lookup.LookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupElementPresentation;
|
||||
import com.intellij.codeInsight.lookup.RealLookupElementPresentation;
|
||||
@@ -84,6 +85,11 @@ abstract public class LiveTemplateLookupElement extends LookupElement {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AutoCompletionPolicy getAutoCompletionPolicy() {
|
||||
return AutoCompletionPolicy.NEVER_AUTOCOMPLETE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isWorthShowingInAutoPopup() {
|
||||
return myWorthShowingInAutoPopup;
|
||||
|
||||
Reference in New Issue
Block a user