提交 6d984c04 编写于 作者: S Skylot

gui: update default settings

上级 3556e591
......@@ -64,7 +64,7 @@ public class JadxCLIArgs {
protected boolean deobfuscationOn = false;
@Parameter(names = {"--deobf-min"}, description = "min length of name, renamed if shorter")
protected int deobfuscationMinLength = 2;
protected int deobfuscationMinLength = 4;
@Parameter(names = {"--deobf-max"}, description = "max length of name, renamed if longer")
protected int deobfuscationMaxLength = 64;
......@@ -73,7 +73,7 @@ public class JadxCLIArgs {
protected boolean deobfuscationForceSave = false;
@Parameter(names = {"--deobf-use-sourcename"}, description = "use source file name as class name alias")
protected boolean deobfuscationUseSourceNameAsAlias = false;
protected boolean deobfuscationUseSourceNameAsAlias = true;
@Parameter(names = {"--cfg"}, description = "save methods control flow graph to dot file")
protected boolean cfgOutput = false;
......
......@@ -10,21 +10,24 @@ import java.util.Map;
import java.util.Set;
import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import jadx.api.JadxArgs;
import jadx.cli.JadxCLIArgs;
public class JadxSettings extends JadxCLIArgs {
private static final Logger LOG = LoggerFactory.getLogger(JadxSettings.class);
private static final String USER_HOME = System.getProperty("user.home");
private static final int RECENT_FILES_COUNT = 15;
private static final int CURRENT_SETTINGS_VERSION = 1;
private static final Font DEFAULT_FONT = new RSyntaxTextArea().getFont();
static final Set<String> SKIP_FIELDS = new HashSet<>(Arrays.asList(
"files", "input", "outputDir", "verbose", "printHelp"
));
private String lastOpenFilePath = USER_HOME;
private String lastSaveFilePath = USER_HOME;
private boolean flattenPackage = false;
......@@ -33,10 +36,11 @@ public class JadxSettings extends JadxCLIArgs {
private String fontStr = "";
private boolean autoStartJobs = false;
private int settingsVersion = 0;
private Map<String, WindowLocation> windowPos = new HashMap<>();
public JadxSettings() {
setSkipResources(true);
}
public void sync() {
......@@ -47,6 +51,9 @@ public class JadxSettings extends JadxCLIArgs {
if (threadsCount <= 0) {
threadsCount = JadxArgs.DEFAULT_THREADS_COUNT;
}
if (settingsVersion != CURRENT_SETTINGS_VERSION) {
upgradeSettings(settingsVersion);
}
}
public String getLastOpenFilePath() {
......@@ -213,4 +220,20 @@ public class JadxSettings extends JadxCLIArgs {
return "";
}
}
private void upgradeSettings(int fromVersion) {
LOG.debug("upgrade settings from version: {} to {}", fromVersion, CURRENT_SETTINGS_VERSION);
if (fromVersion == 0) {
setDeobfuscationMinLength(4);
setDeobfuscationUseSourceNameAsAlias(true);
setDeobfuscationForceSave(true);
setThreadsCount(1);
setReplaceConsts(true);
setSkipResources(false);
setAutoStartJobs(false);
// fromVersion++;
}
settingsVersion = CURRENT_SETTINGS_VERSION;
sync();
}
}
package jadx.gui.treemodel;
public abstract class JLoadableNode extends JNode {
private static final long serialVersionUID = 5543590584166374958L;
public abstract void loadNode();
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册