From 57daa76e1968d8e2297f26875915f4232b222c61 Mon Sep 17 00:00:00 2001 From: Alexander Zolotov Date: Mon, 23 Apr 2018 20:58:32 +0300 Subject: [PATCH] Postfix templates: show templates with same presentable names --- .../postfix/settings/PostfixTemplatesCheckboxTree.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/settings/PostfixTemplatesCheckboxTree.java b/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/settings/PostfixTemplatesCheckboxTree.java index bb26587d4935..e1b3ace7a2cf 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/settings/PostfixTemplatesCheckboxTree.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/postfix/settings/PostfixTemplatesCheckboxTree.java @@ -42,8 +42,13 @@ import java.awt.event.MouseEvent; import java.util.*; public class PostfixTemplatesCheckboxTree extends CheckboxTree implements Disposable { - private static final Factory> myNodesComparator = () -> - new TreeSet<>((o1, o2) -> Comparing.compare(o1.getTemplate().getPresentableName(), o2.getTemplate().getPresentableName())); + private static final Factory> myNodesComparator = () -> new TreeSet<>((o1, o2) -> { + PostfixTemplate template1 = o1.getTemplate(); + PostfixTemplate template2 = o2.getTemplate(); + int compare = Comparing.compare(template1.getPresentableName(), template2.getPresentableName()); + return compare != 0 ? compare : Comparing.compare(template1.getId(), template2.getId()); + }); + @NotNull private final CheckedTreeNode myRoot; @NotNull