From b282d97ffed55c3f6f42afff7b6081679a9658dc Mon Sep 17 00:00:00 2001 From: Skylot Date: Tue, 28 Jun 2022 16:57:57 +0100 Subject: [PATCH] fix(gui): set current dir directly in file chooser constructor (#1553) --- .../src/main/java/jadx/gui/ui/dialog/FileDialog.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/jadx-gui/src/main/java/jadx/gui/ui/dialog/FileDialog.java b/jadx-gui/src/main/java/jadx/gui/ui/dialog/FileDialog.java index f3d7ced0f..d3882d59b 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/dialog/FileDialog.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/dialog/FileDialog.java @@ -18,6 +18,7 @@ import javax.swing.filechooser.FileNameExtensionFilter; import org.jetbrains.annotations.Nullable; +import jadx.api.plugins.utils.CommonFileUtils; import jadx.core.utils.Utils; import jadx.core.utils.files.FileUtils; import jadx.gui.settings.JadxProject; @@ -134,7 +135,7 @@ public class FileDialog { } private FileChooser buildFileChooser() { - FileChooser fileChooser = new FileChooser(); + FileChooser fileChooser = new FileChooser(currentDir); fileChooser.setToolTipText(title); fileChooser.setFileSelectionMode(selectionMode); fileChooser.setMultiSelectionEnabled(isOpen); @@ -143,9 +144,6 @@ public class FileDialog { String description = NLS.str("file_dialog.supported_files") + ": (" + Utils.listToString(fileExtList) + ')'; fileChooser.setFileFilter(new FileNameExtensionFilter(description, fileExtList.toArray(new String[0]))); } - if (currentDir != null) { - fileChooser.setCurrentDirectory(currentDir.toFile()); - } if (selectedFile != null) { fileChooser.setSelectedFile(selectedFile.toFile()); } @@ -153,6 +151,11 @@ public class FileDialog { } private class FileChooser extends JFileChooser { + + public FileChooser(@Nullable Path currentDirectory) { + super(currentDirectory == null ? CommonFileUtils.CWD : currentDirectory.toFile()); + } + @Override protected JDialog createDialog(Component parent) throws HeadlessException { JDialog dialog = super.createDialog(parent);