From 1e12d6d4fc354e26a2f61112af33887eb7d2f71a Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 22 Feb 2013 17:06:21 +0100 Subject: [PATCH] apply start-matching case-insensitively whatever the completion matching option is --- .../normalSorting/EnumConstantStartMatching.java | 12 ++++++++++++ .../completion/NormalCompletionOrderingTest.groovy | 12 ++++++++++-- .../completion/impl/CamelHumpMatcher.java | 6 ------ 3 files changed, 22 insertions(+), 8 deletions(-) create mode 100644 java/java-tests/testData/codeInsight/completion/normalSorting/EnumConstantStartMatching.java diff --git a/java/java-tests/testData/codeInsight/completion/normalSorting/EnumConstantStartMatching.java b/java/java-tests/testData/codeInsight/completion/normalSorting/EnumConstantStartMatching.java new file mode 100644 index 000000000000..1521cfd0521f --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/normalSorting/EnumConstantStartMatching.java @@ -0,0 +1,12 @@ +public class Foo { + + Zoo foo() { + return r + } + + void rMethod() {} +} + +enum Zoo { + LEFT, RIGHT +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy b/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy index d9fa374fbe7e..c1fc757f89e5 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy +++ b/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy @@ -98,11 +98,11 @@ public class NormalCompletionOrderingTest extends CompletionSortingTestCase { } public void testDispreferDeclared() throws Throwable { - checkPreferredItems(0, "aabbb", "aaa"); + checkPreferredItems(0, "aabbb", "Aaaaaaa", "aaa"); } public void testDispreferDeclaredOfExpectedType() throws Throwable { - checkPreferredItems(0, "aabbb", "aaa"); + checkPreferredItems(0, "aabbb", "Aaaaaaa", "aaa"); } public void testDispreferImpls() throws Throwable { @@ -596,4 +596,12 @@ import java.lang.annotation.Target; assertPreferredItems 0, 'setText', 'setOurText' } + public void testEnumConstantStartMatching() { + checkPreferredItems(0, 'rMethod', 'Zoo.RIGHT') + myFixture.type('i\n;\nreturn r') + myFixture.completeBasic() + assertPreferredItems 0, 'Zoo.RIGHT', 'rMethod' + + } + } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CamelHumpMatcher.java b/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CamelHumpMatcher.java index 1901ca31e02e..e88506016808 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CamelHumpMatcher.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CamelHumpMatcher.java @@ -43,12 +43,6 @@ public class CamelHumpMatcher extends PrefixMatcher { @Override public boolean isStartMatch(LookupElement element) { - if (super.isStartMatch(element)) { - return true; - } - if (element.isCaseSensitive()) { - return false; - } return ContainerUtil.or(element.getAllLookupStrings(), new Condition() { @Override public boolean value(String s) {