mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
inspection toolwindow: do not merge ProblemDescriptor-s with the same getLineNumber() IDEA-157966
This commit is contained in:
+15
-2
@@ -93,8 +93,21 @@ public class InspectionResultsViewComparator implements Comparator {
|
||||
final CommonProblemDescriptor descriptor1 = ((ProblemDescriptionNode)node1).getDescriptor();
|
||||
final CommonProblemDescriptor descriptor2 = ((ProblemDescriptionNode)node2).getDescriptor();
|
||||
if (descriptor1 instanceof ProblemDescriptor && descriptor2 instanceof ProblemDescriptor) {
|
||||
//TODO: Do not materialise lazy pointers
|
||||
return ((ProblemDescriptor)descriptor1).getLineNumber() - ((ProblemDescriptor)descriptor2).getLineNumber();
|
||||
int diff = ((ProblemDescriptor)descriptor1).getLineNumber() - ((ProblemDescriptor)descriptor2).getLineNumber();
|
||||
if (diff != 0) {
|
||||
return diff;
|
||||
}
|
||||
diff = ((ProblemDescriptor)descriptor1).getHighlightType().compareTo(((ProblemDescriptor)descriptor2).getHighlightType());
|
||||
if (diff != 0) {
|
||||
return diff;
|
||||
}
|
||||
diff = PsiUtilCore.compareElementsByPosition(((ProblemDescriptor)descriptor1).getStartElement(),
|
||||
((ProblemDescriptor)descriptor2).getStartElement());
|
||||
if (diff != 0) {
|
||||
return diff;
|
||||
}
|
||||
return PsiUtilCore.compareElementsByPosition(((ProblemDescriptor)descriptor2).getEndElement(),
|
||||
((ProblemDescriptor)descriptor1).getEndElement());
|
||||
}
|
||||
if (descriptor1 != null && descriptor2 != null) {
|
||||
return descriptor1.getDescriptionTemplate().compareToIgnoreCase(descriptor2.getDescriptionTemplate());
|
||||
|
||||
Reference in New Issue
Block a user