From 64b1408b96d1ca115f705c8ec59c3bc4c1e82780 Mon Sep 17 00:00:00 2001 From: Joseph Burton Date: Thu, 16 Oct 2025 18:26:55 +0100 Subject: Color unobfuscated tokens in blue (#569) --- .../java/cuchaz/enigma/source/DecompiledClassSource.java | 13 ++++++++++++- .../main/java/cuchaz/enigma/source/RenamableTokenType.java | 3 ++- 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'enigma') diff --git a/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java b/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java index 4f78e9c..69692db 100644 --- a/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java +++ b/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java @@ -12,6 +12,7 @@ import cuchaz.enigma.EnigmaProject; import cuchaz.enigma.EnigmaServices; import cuchaz.enigma.analysis.EntryReference; import cuchaz.enigma.api.service.NameProposalService; +import cuchaz.enigma.api.service.ObfuscationTestService; import cuchaz.enigma.translation.LocalNameGenerator; import cuchaz.enigma.translation.TranslateResult; import cuchaz.enigma.translation.Translator; @@ -72,7 +73,11 @@ public class DecompiledClassSource { return proposedName.get(); } - target.add(RenamableTokenType.OBFUSCATED, movedToken); + if (isUnobfuscated(project, entry)) { + target.add(RenamableTokenType.UNOBFUSCATED, movedToken); + } else { + target.add(RenamableTokenType.OBFUSCATED, movedToken); + } } } @@ -96,6 +101,12 @@ public class DecompiledClassSource { }).findFirst(); } + private static boolean isUnobfuscated(EnigmaProject project, Entry entry) { + EnigmaServices services = project.getEnigma().getServices(); + + return services.get(ObfuscationTestService.TYPE).stream().anyMatch(service -> service.testDeobfuscated(entry)); + } + @Nullable private String generateDefaultName(Entry entry) { if (entry instanceof LocalVariableDefEntry) { diff --git a/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java b/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java index c63aad9..aad3ada 100644 --- a/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java +++ b/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java @@ -3,5 +3,6 @@ package cuchaz.enigma.source; public enum RenamableTokenType { OBFUSCATED, DEOBFUSCATED, - PROPOSED + PROPOSED, + UNOBFUSCATED, } -- cgit v1.2.3