From 7f1a5c1e84b1e434ce3ac4571a2906b8fd40382c Mon Sep 17 00:00:00 2001 From: Yanis48 Date: Sat, 18 Apr 2020 15:02:51 +0200 Subject: QOL fixes (#222) * qol fixes * ctrl_mask -> ctrl_down_mask * reverted deobfuscation change--- src/main/java/cuchaz/enigma/Enigma.java | 6 ---- src/main/java/cuchaz/enigma/EnigmaServices.java | 1 - .../bytecode/translators/SourceFixVisitor.java | 1 - .../translators/TranslationSignatureVisitor.java | 1 - .../cuchaz/enigma/gui/DecompiledClassSource.java | 1 - src/main/java/cuchaz/enigma/gui/Gui.java | 3 +- src/main/java/cuchaz/enigma/gui/GuiController.java | 1 - .../java/cuchaz/enigma/gui/dialog/CrashDialog.java | 2 +- .../cuchaz/enigma/gui/dialog/JavadocDialog.java | 2 +- .../java/cuchaz/enigma/gui/elements/MenuBar.java | 32 ++++++++++++++++------ .../cuchaz/enigma/gui/elements/PopupMenuBar.java | 24 ++++++++-------- .../java/cuchaz/enigma/gui/panels/PanelEditor.java | 6 +++- 12 files changed, 43 insertions(+), 37 deletions(-) (limited to 'src/main/java/cuchaz/enigma') diff --git a/src/main/java/cuchaz/enigma/Enigma.java b/src/main/java/cuchaz/enigma/Enigma.java index 4522ed7..b8887c2 100644 --- a/src/main/java/cuchaz/enigma/Enigma.java +++ b/src/main/java/cuchaz/enigma/Enigma.java @@ -12,10 +12,7 @@ package cuchaz.enigma; import com.google.common.base.Preconditions; -import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableListMultimap; -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.ImmutableMultimap; import cuchaz.enigma.analysis.ClassCache; import cuchaz.enigma.analysis.index.JarIndex; import cuchaz.enigma.api.EnigmaPlugin; @@ -27,10 +24,7 @@ import cuchaz.enigma.api.service.JarIndexerService; import java.io.IOException; import java.nio.file.Path; -import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.ServiceLoader; public class Enigma { diff --git a/src/main/java/cuchaz/enigma/EnigmaServices.java b/src/main/java/cuchaz/enigma/EnigmaServices.java index 45062d7..df3b7bb 100644 --- a/src/main/java/cuchaz/enigma/EnigmaServices.java +++ b/src/main/java/cuchaz/enigma/EnigmaServices.java @@ -4,7 +4,6 @@ import com.google.common.collect.ImmutableListMultimap; import cuchaz.enigma.api.service.EnigmaService; import cuchaz.enigma.api.service.EnigmaServiceType; -import java.util.Collections; import java.util.List; public final class EnigmaServices { diff --git a/src/main/java/cuchaz/enigma/bytecode/translators/SourceFixVisitor.java b/src/main/java/cuchaz/enigma/bytecode/translators/SourceFixVisitor.java index d672622..2b750ea 100644 --- a/src/main/java/cuchaz/enigma/bytecode/translators/SourceFixVisitor.java +++ b/src/main/java/cuchaz/enigma/bytecode/translators/SourceFixVisitor.java @@ -4,7 +4,6 @@ import cuchaz.enigma.analysis.index.BridgeMethodIndex; import cuchaz.enigma.analysis.index.JarIndex; import cuchaz.enigma.translation.representation.entry.ClassDefEntry; import cuchaz.enigma.translation.representation.entry.MethodDefEntry; -import cuchaz.enigma.translation.representation.entry.MethodEntry; import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.MethodVisitor; import org.objectweb.asm.Opcodes; diff --git a/src/main/java/cuchaz/enigma/bytecode/translators/TranslationSignatureVisitor.java b/src/main/java/cuchaz/enigma/bytecode/translators/TranslationSignatureVisitor.java index 8e7780e..eebd650 100644 --- a/src/main/java/cuchaz/enigma/bytecode/translators/TranslationSignatureVisitor.java +++ b/src/main/java/cuchaz/enigma/bytecode/translators/TranslationSignatureVisitor.java @@ -1,7 +1,6 @@ package cuchaz.enigma.bytecode.translators; import cuchaz.enigma.utils.Utils; -import org.objectweb.asm.Opcodes; import org.objectweb.asm.signature.SignatureVisitor; import java.util.Stack; diff --git a/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java b/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java index 4d6b557..f7097f0 100644 --- a/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java +++ b/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java @@ -6,7 +6,6 @@ import cuchaz.enigma.analysis.EntryReference; import cuchaz.enigma.analysis.Token; import cuchaz.enigma.api.service.NameProposalService; import cuchaz.enigma.gui.highlight.TokenHighlightType; -import cuchaz.enigma.source.Decompiler; import cuchaz.enigma.source.SourceIndex; import cuchaz.enigma.translation.LocalNameGenerator; import cuchaz.enigma.translation.Translator; diff --git a/src/main/java/cuchaz/enigma/gui/Gui.java b/src/main/java/cuchaz/enigma/gui/Gui.java index 5eeb07d..ee8fbdf 100644 --- a/src/main/java/cuchaz/enigma/gui/Gui.java +++ b/src/main/java/cuchaz/enigma/gui/Gui.java @@ -49,7 +49,6 @@ import java.awt.event.*; import java.nio.file.Path; import java.util.List; import java.util.*; -import java.util.function.Consumer; import java.util.function.Function; public class Gui { @@ -501,7 +500,7 @@ public class Gui { container.add(panel); } - private JComboBox addModifierComboBox(JPanel container, String name, Entry entry) { + private JComboBox addModifierComboBox(JPanel container, String name, Entry entry) { if (!getController().project.isRenamable(entry)) return null; JPanel panel = new JPanel(); diff --git a/src/main/java/cuchaz/enigma/gui/GuiController.java b/src/main/java/cuchaz/enigma/gui/GuiController.java index 261238b..742d6b8 100644 --- a/src/main/java/cuchaz/enigma/gui/GuiController.java +++ b/src/main/java/cuchaz/enigma/gui/GuiController.java @@ -37,7 +37,6 @@ import cuchaz.enigma.translation.representation.entry.MethodEntry; import cuchaz.enigma.utils.I18n; import cuchaz.enigma.utils.ReadableToken; import cuchaz.enigma.utils.Utils; -import org.objectweb.asm.Opcodes; import org.objectweb.asm.tree.ClassNode; import javax.annotation.Nullable; diff --git a/src/main/java/cuchaz/enigma/gui/dialog/CrashDialog.java b/src/main/java/cuchaz/enigma/gui/dialog/CrashDialog.java index 3921b51..78b1d75 100644 --- a/src/main/java/cuchaz/enigma/gui/dialog/CrashDialog.java +++ b/src/main/java/cuchaz/enigma/gui/dialog/CrashDialog.java @@ -83,7 +83,7 @@ public class CrashDialog { // show the frame frame.setSize(600, 400); frame.setLocationRelativeTo(parent); - frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); + frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); } public static void init(JFrame parent) { diff --git a/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java b/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java index 57811ee..033318a 100644 --- a/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java +++ b/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java @@ -74,7 +74,7 @@ public class JavadocDialog { // show the frame frame.setSize(600, 400); frame.setLocationRelativeTo(parent); - frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); + frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); } public static void init(JFrame parent, JTextArea area, Callback callback) { diff --git a/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java b/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java index 185e83c..f3bf69a 100644 --- a/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java +++ b/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java @@ -8,7 +8,6 @@ import cuchaz.enigma.gui.dialog.SearchDialog; import cuchaz.enigma.gui.stats.StatsMember; import cuchaz.enigma.translation.mapping.serde.MappingFormat; import cuchaz.enigma.utils.I18n; -import cuchaz.enigma.utils.Utils; import javax.swing.*; import java.awt.*; @@ -40,6 +39,9 @@ public class MenuBar extends JMenuBar { public MenuBar(Gui gui) { this.gui = gui; + /* + * File menu + */ { JMenu menu = new JMenu(I18n.translate("menu.file")); this.add(menu); @@ -48,9 +50,14 @@ public class MenuBar extends JMenuBar { menu.add(item); item.addActionListener(event -> { this.gui.jarFileChooser.setVisible(true); - Path path = Paths.get(this.gui.jarFileChooser.getDirectory()).resolve(this.gui.jarFileChooser.getFile()); - if (Files.exists(path)) { - gui.getController().openJar(path); + String file = this.gui.jarFileChooser.getFile(); + // checks if the file name is not empty + if (file != null) { + Path path = Paths.get(this.gui.jarFileChooser.getDirectory()).resolve(file); + // checks if the file name corresponds to an existing file + if (Files.exists(path)) { + gui.getController().openJar(path); + } } }); } @@ -189,6 +196,7 @@ public class MenuBar extends JMenuBar { pane.add(button); frame.pack(); + frame.setLocationRelativeTo(this.gui.getFrame()); frame.setVisible(true); }); @@ -202,6 +210,9 @@ public class MenuBar extends JMenuBar { } } + /* + * Decompiler menu + */ { JMenu menu = new JMenu(I18n.translate("menu.decompiler")); add(menu); @@ -222,6 +233,9 @@ public class MenuBar extends JMenuBar { } } + /* + * View menu + */ { JMenu menu = new JMenu(I18n.translate("menu.view")); this.add(menu); @@ -250,16 +264,12 @@ public class MenuBar extends JMenuBar { pane.add(text); JButton okButton = new JButton(I18n.translate("menu.view.languages.ok")); - okButton.setAlignmentX(JButton.CENTER_ALIGNMENT); - okButton.setHorizontalAlignment(JButton.CENTER); pane.add(okButton); okButton.addActionListener(arg0 -> frame.dispose()); - frame.setSize(350, 110); - frame.setResizable(false); + frame.pack(); frame.setLocationRelativeTo(this.gui.getFrame()); frame.setVisible(true); - frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); }); } @@ -274,6 +284,10 @@ public class MenuBar extends JMenuBar { } } + + /* + * Help menu + */ { JMenu menu = new JMenu(I18n.translate("menu.help")); this.add(menu); diff --git a/src/main/java/cuchaz/enigma/gui/elements/PopupMenuBar.java b/src/main/java/cuchaz/enigma/gui/elements/PopupMenuBar.java index 94da1d2..b92041c 100644 --- a/src/main/java/cuchaz/enigma/gui/elements/PopupMenuBar.java +++ b/src/main/java/cuchaz/enigma/gui/elements/PopupMenuBar.java @@ -24,7 +24,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.rename")); menu.addActionListener(event -> gui.startRename()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.renameMenu = menu; @@ -32,7 +32,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.javadoc")); menu.addActionListener(event -> gui.startDocChange()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.editJavadocMenu = menu; @@ -40,7 +40,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.inheritance")); menu.addActionListener(event -> gui.showInheritance()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_I, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_I, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.showInheritanceMenu = menu; @@ -48,7 +48,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.implementations")); menu.addActionListener(event -> gui.showImplementations()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_M, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_M, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.showImplementationsMenu = menu; @@ -56,7 +56,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.calls")); menu.addActionListener(event -> gui.showCalls(true)); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.showCallsMenu = menu; @@ -64,7 +64,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.calls.specific")); menu.addActionListener(event -> gui.showCalls(false)); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.SHIFT_DOWN_MASK)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_DOWN_MASK + InputEvent.SHIFT_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.showCallsSpecificMenu = menu; @@ -72,7 +72,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.declaration")); menu.addActionListener(event -> gui.getController().navigateTo(gui.cursorReference.entry)); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.openEntryMenu = menu; @@ -80,7 +80,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.back")); menu.addActionListener(event -> gui.getController().openPreviousReference()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.openPreviousMenu = menu; @@ -88,7 +88,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.forward")); menu.addActionListener(event -> gui.getController().openNextReference()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.openNextMenu = menu; @@ -96,7 +96,7 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.mark_deobfuscated")); menu.addActionListener(event -> gui.toggleMapping()); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, 0)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_DOWN_MASK)); menu.setEnabled(false); this.add(menu); this.toggleMappingMenu = menu; @@ -107,13 +107,13 @@ public class PopupMenuBar extends JPopupMenu { { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.zoom.in")); menu.addActionListener(event -> gui.editor.offsetEditorZoom(2)); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, InputEvent.CTRL_MASK)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, InputEvent.CTRL_DOWN_MASK)); this.add(menu); } { JMenuItem menu = new JMenuItem(I18n.translate("popup_menu.zoom.out")); menu.addActionListener(event -> gui.editor.offsetEditorZoom(-2)); - menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS, InputEvent.CTRL_MASK)); + menu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS, InputEvent.CTRL_DOWN_MASK)); this.add(menu); } { diff --git a/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java b/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java index bbb839e..1a34edf 100644 --- a/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java +++ b/src/main/java/cuchaz/enigma/gui/panels/PanelEditor.java @@ -77,7 +77,11 @@ public class PanelEditor extends JEditorPane { break; case KeyEvent.VK_C: - gui.popupMenu.showCallsMenu.doClick(); + if (event.isShiftDown()) { + gui.popupMenu.showCallsSpecificMenu.doClick(); + } else { + gui.popupMenu.showCallsMenu.doClick(); + } break; case KeyEvent.VK_O: -- cgit v1.2.3