From 9797fe5b8107c9378cd91b02df61024b15607139 Mon Sep 17 00:00:00 2001 From: Ahmed Ashour Date: Wed, 20 Mar 2019 12:04:51 +0100 Subject: [PATCH] fix(gui): sort resources according to their type, then name (PR #479) --- jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java b/jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java index 753af2523..59a82b20b 100644 --- a/jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java +++ b/jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java @@ -3,6 +3,7 @@ package jadx.gui.treemodel; import javax.swing.*; import java.util.ArrayList; import java.util.Collections; +import java.util.Comparator; import java.util.List; import java.util.Map; @@ -68,6 +69,14 @@ public class JResource extends JLoadableNode implements Comparable { } } else { removeAllChildren(); + + Comparator typeComparator + = (r1, r2) -> r1.type.ordinal() - r2.type.ordinal(); + Comparator nameComparator + = Comparator.comparing(JResource::getName, String.CASE_INSENSITIVE_ORDER); + + files.sort(typeComparator.thenComparing(nameComparator)); + for (JResource res : files) { res.update(); add(res);