summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui')
-rw-r--r--src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java12
-rw-r--r--src/main/java/cuchaz/enigma/gui/Gui.java2
-rw-r--r--src/main/java/cuchaz/enigma/gui/GuiController.java6
3 files changed, 9 insertions, 11 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java b/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java
index 44f70f8..c1b163d 100644
--- a/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java
+++ b/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java
@@ -80,19 +80,15 @@ public class DecompiledClassSource {
80 private Optional<String> proposeName(EnigmaProject project, Entry<?> entry) { 80 private Optional<String> proposeName(EnigmaProject project, Entry<?> entry) {
81 EnigmaServices services = project.getEnigma().getServices(); 81 EnigmaServices services = project.getEnigma().getServices();
82 82
83 return services.get(NameProposalService.TYPE).flatMap(nameProposalService -> { 83 return services.get(NameProposalService.TYPE).stream().flatMap(nameProposalService -> {
84 EntryResolver resolver = project.getMapper().getObfResolver();
85
86 Collection<Entry<?>> resolved = resolver.resolveEntry(entry, ResolutionStrategy.RESOLVE_ROOT);
87 EntryRemapper mapper = project.getMapper(); 84 EntryRemapper mapper = project.getMapper();
85 Collection<Entry<?>> resolved = mapper.getObfResolver().resolveEntry(entry, ResolutionStrategy.RESOLVE_ROOT);
88 86
89 Stream<String> proposals = resolved.stream() 87 return resolved.stream()
90 .map(e -> nameProposalService.proposeName(e, mapper)) 88 .map(e -> nameProposalService.proposeName(e, mapper))
91 .filter(Optional::isPresent) 89 .filter(Optional::isPresent)
92 .map(Optional::get); 90 .map(Optional::get);
93 91 }).findFirst();
94 return proposals.findFirst();
95 });
96 } 92 }
97 93
98 @Nullable 94 @Nullable
diff --git a/src/main/java/cuchaz/enigma/gui/Gui.java b/src/main/java/cuchaz/enigma/gui/Gui.java
index 52a97bb..3ab1cee 100644
--- a/src/main/java/cuchaz/enigma/gui/Gui.java
+++ b/src/main/java/cuchaz/enigma/gui/Gui.java
@@ -526,6 +526,8 @@ public class Gui {
526 } 526 }
527 527
528 public void onCaretMove(int pos, boolean fromClick) { 528 public void onCaretMove(int pos, boolean fromClick) {
529 if (controller.project == null)
530 return;
529 EntryRemapper mapper = controller.project.getMapper(); 531 EntryRemapper mapper = controller.project.getMapper();
530 Token token = this.controller.getToken(pos); 532 Token token = this.controller.getToken(pos);
531 boolean isToken = token != null; 533 boolean isToken = token != null;
diff --git a/src/main/java/cuchaz/enigma/gui/GuiController.java b/src/main/java/cuchaz/enigma/gui/GuiController.java
index 89fbd10..54b5c92 100644
--- a/src/main/java/cuchaz/enigma/gui/GuiController.java
+++ b/src/main/java/cuchaz/enigma/gui/GuiController.java
@@ -342,11 +342,11 @@ public class GuiController {
342 visibleClasses.forEach(entry -> { 342 visibleClasses.forEach(entry -> {
343 ClassEntry deobfEntry = mapper.deobfuscate(entry); 343 ClassEntry deobfEntry = mapper.deobfuscate(entry);
344 344
345 Optional<ObfuscationTestService> obfService = enigma.getServices().get(ObfuscationTestService.TYPE); 345 List<ObfuscationTestService> obfService = enigma.getServices().get(ObfuscationTestService.TYPE);
346 boolean obfuscated = deobfEntry.equals(entry); 346 boolean obfuscated = deobfEntry.equals(entry);
347 347
348 if (obfuscated && obfService.isPresent()) { 348 if (obfuscated && !obfService.isEmpty()) {
349 if (obfService.get().testDeobfuscated(entry)) { 349 if (obfService.stream().anyMatch(service -> service.testDeobfuscated(entry))) {
350 obfuscated = false; 350 obfuscated = false;
351 } 351 }
352 } 352 }