From 04518cd5a9c83f776847cf82f533360668e9a4fd Mon Sep 17 00:00:00 2001 From: Dmitry Batkovich Date: Tue, 22 Jul 2014 17:03:48 +0400 Subject: [PATCH] Inspections settings ui: tools not initialized if no necessity to apply inspections filter --- .../codeInspection/ui/SingleInspectionProfilePanel.java | 3 ++- .../profile/codeInspection/ui/filter/InspectionsFilter.java | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/SingleInspectionProfilePanel.java b/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/SingleInspectionProfilePanel.java index 62e29fc635ca..ce5f308c1305 100644 --- a/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/SingleInspectionProfilePanel.java +++ b/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/SingleInspectionProfilePanel.java @@ -661,12 +661,13 @@ public class SingleInspectionProfilePanel extends JPanel { keySetList.addAll(SearchUtil.findKeys(filter, quoted)); } Project project = myProjectProfileManager.getProject(); + final boolean emptyFilter = myInspectionsFilter.isEmptyFilter(); for (ToolDescriptors toolDescriptors : myInitialToolDescriptors) { final Descriptor descriptor = toolDescriptors.getDefaultDescriptor(); if (filter != null && !filter.isEmpty() && !isDescriptorAccepted(descriptor, filter, forceInclude, keySetList, quoted)) { continue; } - if (!myInspectionsFilter.matches(mySelectedProfile.getTools(toolDescriptors.getDefaultDescriptor().getKey().toString(), project))) { + if (!emptyFilter && !myInspectionsFilter.matches(mySelectedProfile.getTools(toolDescriptors.getDefaultDescriptor().getKey().toString(), project))) { continue; } final InspectionConfigTreeNode node = new InspectionConfigTreeNode(toolDescriptors); diff --git a/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/filter/InspectionsFilter.java b/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/filter/InspectionsFilter.java index d3f18f8fdb57..432ef560ba58 100644 --- a/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/filter/InspectionsFilter.java +++ b/platform/lang-impl/src/com/intellij/profile/codeInspection/ui/filter/InspectionsFilter.java @@ -66,6 +66,10 @@ public abstract class InspectionsFilter { filterChanged(); } + public boolean isEmptyFilter() { + return mySuitableInspectionsStates == null && !myAvailableOnlyForAnalyze && mySuitableSeverities.isEmpty(); + } + public boolean matches(final Tools tools) { if (mySuitableInspectionsStates != null && mySuitableInspectionsStates != tools.isEnabled()) { return false;