diff --git a/java/java-tests/testSrc/com/intellij/find/FindManagerTest.java b/java/java-tests/testSrc/com/intellij/find/FindManagerTest.java index 45a04cab24fa..ff0a60ce0c52 100644 --- a/java/java-tests/testSrc/com/intellij/find/FindManagerTest.java +++ b/java/java-tests/testSrc/com/intellij/find/FindManagerTest.java @@ -895,7 +895,7 @@ public class FindManagerTest extends DaemonAnalyzerTestCase { } public void testCreateFileMaskCondition() { - Condition condition = createFileMaskCondition("*.java, *.js, !Foo.java, !*.min.js"); + Condition condition = createFileMaskCondition("*.java, *.js, !Foo.java, !*.min.js"); assertTrue(condition.value("Bar.java")); assertTrue(!condition.value("Bar.javac")); assertTrue(!condition.value("Foo.java")); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/actions/ReformatCodeAction.java b/platform/lang-impl/src/com/intellij/codeInsight/actions/ReformatCodeAction.java index f1950bbde116..3fd961eafc26 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/actions/ReformatCodeAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/actions/ReformatCodeAction.java @@ -243,16 +243,16 @@ public class ReformatCodeAction extends AnAction implements DumbAware { if (fileTypeMask == null) return; - final Condition patternCondition = getFileTypeMaskPattern(fileTypeMask); + final Condition patternCondition = getFileTypeMaskPattern(fileTypeMask); processor.addFileFilter(new VirtualFileFilter() { @Override public boolean accept(@NotNull VirtualFile file) { - return patternCondition.value(file.getName()); + return patternCondition.value(file.getNameSequence()); } }); } - private static Condition getFileTypeMaskPattern(@Nullable String mask) { + private static Condition getFileTypeMaskPattern(@Nullable String mask) { try { return FindInProjectUtil.createFileMaskCondition(mask); } catch (PatternSyntaxException e) { diff --git a/platform/lang-impl/src/com/intellij/codeInspection/actions/FileFilterPanel.java b/platform/lang-impl/src/com/intellij/codeInspection/actions/FileFilterPanel.java index 3975a65143b0..695bc58fc28d 100644 --- a/platform/lang-impl/src/com/intellij/codeInspection/actions/FileFilterPanel.java +++ b/platform/lang-impl/src/com/intellij/codeInspection/actions/FileFilterPanel.java @@ -60,11 +60,11 @@ class FileFilterPanel { String text = (String)myFileMask.getSelectedItem(); if (text == null) return null; - final Condition patternCondition = FindInProjectUtil.createFileMaskCondition(text); + final Condition patternCondition = FindInProjectUtil.createFileMaskCondition(text); return new GlobalSearchScope() { @Override public boolean contains(@NotNull VirtualFile file) { - return patternCondition.value(file.getName()); + return patternCondition.value(file.getNameSequence()); } @Override diff --git a/platform/lang-impl/src/com/intellij/find/impl/FindInProjectTask.java b/platform/lang-impl/src/com/intellij/find/impl/FindInProjectTask.java index a1bf4487aee4..23399a8b05b9 100644 --- a/platform/lang-impl/src/com/intellij/find/impl/FindInProjectTask.java +++ b/platform/lang-impl/src/com/intellij/find/impl/FindInProjectTask.java @@ -109,9 +109,9 @@ class FindInProjectTask { myProjectFileIndex = ProjectRootManager.getInstance(project).getFileIndex(); myFileIndex = myModule == null ? myProjectFileIndex : ModuleRootManager.getInstance(myModule).getFileIndex(); - final Condition patternCondition = FindInProjectUtil.createFileMaskCondition(findModel.getFileFilter()); + Condition patternCondition = FindInProjectUtil.createFileMaskCondition(findModel.getFileFilter()); - myFileMask = file -> file != null && patternCondition.value(file.getName()); + myFileMask = file -> file != null && patternCondition.value(file.getNameSequence()); final ProgressIndicator progress = ProgressManager.getInstance().getProgressIndicator(); myProgress = progress != null ? progress : new EmptyProgressIndicator(); diff --git a/platform/lang-impl/src/com/intellij/find/impl/FindInProjectUtil.java b/platform/lang-impl/src/com/intellij/find/impl/FindInProjectUtil.java index 29ee3a208642..cf74dc5402d6 100644 --- a/platform/lang-impl/src/com/intellij/find/impl/FindInProjectUtil.java +++ b/platform/lang-impl/src/com/intellij/find/impl/FindInProjectUtil.java @@ -162,7 +162,7 @@ public class FindInProjectUtil { /* filter can have form "*.js, !*_min.js", latter means except matched by *_min.js */ @NotNull - public static Condition createFileMaskCondition(@Nullable String filter) throws PatternSyntaxException { + public static Condition createFileMaskCondition(@Nullable String filter) throws PatternSyntaxException { if (filter == null) { return Conditions.alwaysTrue(); } @@ -175,7 +175,8 @@ public class FindInProjectUtil { mask = mask.trim(); if (StringUtil.startsWith(mask, "!")) { negativePattern += (negativePattern.isEmpty() ? "" : "|") + "(" + PatternUtil.convertToRegex(mask.substring(1)) + ")"; - } else { + } + else { pattern += (pattern.isEmpty() ? "" : "|") + "(" + PatternUtil.convertToRegex(mask) + ")"; } } @@ -184,11 +185,11 @@ public class FindInProjectUtil { final String finalPattern = pattern; final String finalNegativePattern = negativePattern; - return new Condition() { + return new Condition() { final Pattern regExp = Pattern.compile(finalPattern, Pattern.CASE_INSENSITIVE); final Pattern negativeRegExp = StringUtil.isEmpty(finalNegativePattern) ? null : Pattern.compile(finalNegativePattern, Pattern.CASE_INSENSITIVE); @Override - public boolean value(String input) { + public boolean value(CharSequence input) { return regExp.matcher(input).matches() && (negativeRegExp == null || !negativeRegExp.matcher(input).matches()); } };