InputFilter (@NotNull ConsoleView consoleView, @NotNull Project project, @NotNull GlobalSearchScope searchScope) { List<ConsoleInputFilterProvider> inputFilters = ConsoleInputFilterProvider.INPUT_FILTER_PROVIDERS.getExtensionList(); if (inputFilters.isEmpty()) { return (text, contentType) -> null; } List<InputFilter> allFilters = new ArrayList<>(); for (ConsoleInputFilterProvider eachProvider : inputFilters) { if (eachProvider instanceof ConsoleDependentInputFilterProvider) { allFilters.addAll(((ConsoleDependentInputFilterProvider)eachProvider).getDefaultFilters(consoleView, project, searchScope)); } else { allFilters.addAll(Arrays.asList(eachProvider.getDefaultFilters(project))); } } return new CompositeInputFilter(project, allFilters); }