Skylot
94a06d9b6f
feat(gui): on mouse hover highlight identifiers with enabled actions (like 'find usage' or 'rename')
2020-08-17 17:38:48 +01:00
Skylot
f1f7c70aee
chore(gui): fix locales test
2020-08-16 13:13:50 +01:00
Jan Peter Stotz
718caf8cb1
chore (gui): Add button in preferences dialog to copy the preference values in text form (json) to clipboard
2020-08-16 13:05:49 +02:00
Skylot
1560284831
refactor: fix zip security in dex plugin, remove smali deps from jadx-core
2020-08-06 13:39:40 +01:00
Skylot
ae26512601
fix: use internal usage info for rename, fix index refresh ( #791 )
2020-08-03 11:55:19 +01:00
Skylot
34692c41f2
Merge branch 'master' into rename
...
# Conflicts:
# jadx-core/src/main/java/jadx/core/dex/nodes/ClassNode.java
# jadx-gui/src/main/java/jadx/gui/ui/RenameDialog.java
2020-07-03 16:39:02 +01:00
Bet4
8a8b945eb8
fix(gui): run indexJob before rename (PR #910 )
2020-07-03 17:26:24 +03:00
Snowhite
f696dc715b
fix(gui): update Messages_zh_CN.properties (PR #959 )
...
modifying error of positional argument in Chinese search result text
2020-07-03 17:19:18 +03:00
Skylot
0d69e0ac97
refactor: use own dex parser instead deprecated dx lib
2020-05-21 22:02:20 +01:00
Soul Trace
705ceca42a
fix(gui): RenameDialog: Warn user if deobfuscation settings are invalid (PR #935 )
...
The rename functionality relies on deobfuscation for now - so let the user know
this and ask the user to enable deobfuscation to get rename working.
The "Force rewrite deobfuscation map file" option effectively disables
renaming, because renaming relies on deobfuscation map modification for now,
but Force rewrite rewrites the map on each file reload, destroying changes.
So. let the user know this issue instead of silent failure.
2020-05-14 22:56:35 +03:00
Skylot
c05368d92e
style: prefer use Stream.of method
2020-05-10 15:46:06 +01:00
Skylot
45b7304630
fix: workaround for link clicks in RSyntaxTextArea ( #929 )
2020-05-08 20:01:20 +01:00
Jan S
2cc49256a9
chore(gui): optimized the text search for classes, methods and fields (PR #887 )
2020-03-15 18:55:32 +03:00
Jan S
79ab2e11f8
chore(gui): preferences dialog changed to two-column mode (PR #888 )
2020-03-15 18:21:08 +03:00
Jan S
c1f4302e62
feat(gui): allow to search for full method/field signature, not only the name (PR #880 )
2020-03-10 12:11:44 +03:00
Skylot
37aecf72cb
Merge branch 'master' into rename
2020-03-09 19:43:40 +00:00
Skylot
fa0a38d3aa
fix: don't use OS specific new line chars ( #861 )
2020-02-23 15:37:07 +00:00
Jan S
4520747167
fix: concurrent access may cause an java.lang.ClassCastException in JNodeCache (PR #864 )
2020-02-23 16:22:49 +03:00
Yaroslav Yadrov
492a3f6928
feat(deobf): add classname parsing for Kotlin metadata (PR #842 , #758 )
2020-02-02 17:08:29 +03:00
S-trace
d98321026d
gui: RenameDialog: Unload classes in refreshTabs() before refreshing
...
This should fix possible problems with incorrect refresh for open classes.
2020-01-20 10:13:20 +03:00
S-trace
0b6fabbc71
gui: Perform classes unload in the background UnloadJob
...
This should improve interface responsibility if there are many classes
to refresh after rename.
2020-01-20 10:13:20 +03:00
Skylot
bb0fad2834
fix: resolve multi-threaded unloading
2020-01-20 10:13:20 +03:00
S-trace
a0e13d0481
gui: RenameDialog: Rename tmp deobf map file too
...
Fixes /tmp/deobf_tmp_*.txt temporary files accumulation on renames.
2020-01-17 10:38:15 +03:00
Skylot
cd7e5bf020
Merge branch 'master' into rename
2020-01-17 10:37:43 +03:00
Skylot
5e7388f686
refactor: fix several issues reported by sonar
2020-01-16 12:16:32 +03:00
Skylot
531650c9f2
refactor: allow to change temp dir using system property JADX_TMP_DIR
2020-01-13 15:32:32 +03:00
S-trace
797904afb5
gui: Perform refresh of non-displayed classes in background thread
...
After renaming some classes needs to be redecompiled to reflect new state.
Move recompilation of non-displayed classes to background thread.
This should improve performance on weak machines.
2020-01-03 06:09:13 +03:00
S-trace
489fbb5e42
gui: Improve performance of renaming
...
Fixes multiple decompilation of classes - now each class decompiled just once.
2020-01-03 06:09:12 +03:00
S-trace
9dd5a9ef89
gui: More advanced implementation of renaming
...
This implementation does not reload file after renaming, and so works faster.
2020-01-03 06:09:08 +03:00
Skylot
8365855475
fix(gui): search only in short names of methods and fields ( #818 )
2019-12-27 18:55:11 +00:00
Skylot
55eb86d2d5
fix(gui): search class with --select-class also by not deobfuscated names
2019-12-27 18:52:28 +00:00
Skylot
0a9b944431
refactor(gui): add on finish runnable to open action
2019-12-27 18:42:07 +00:00
Skylot
99eb31b312
fix(gui): add dots for progress titles
2019-12-27 21:19:37 +03:00
Soul Trace
287275d886
fix(gui): resolve --select-class option regression (PR #816 )
2019-12-26 20:29:47 +03:00
Skylot
af6f8b5391
fix(gui): resolve exceptions during index ( #812 )
2019-12-23 22:39:06 +03:00
Hen Ry
3b9b103c3f
fix(gui): update Deutsch translation (PR #811 )
2019-12-23 20:48:17 +03:00
Skylot
9c88f70740
fix(gui): load file in background thread and show progress indicator
2019-12-22 15:56:50 +00:00
Skylot
9ab003df4c
feat(gui): map back and forward mouse keys for navigation ( #807 )
2019-12-21 16:15:05 +00:00
Skylot
7f8d03d192
style: fix some sonar and compiler warnings
2019-12-21 15:37:25 +03:00
Skylot
c64ffde11f
refactor: use ICodeInfo interface instead CodeWriter
2019-12-21 12:36:54 +00:00
Hen Ry
1568008c67
fix(gui): improve Deutsch translation (PR #806 )
2019-12-20 21:34:32 +03:00
Skylot
84211576e4
fix(gui): add Deutsch to locales list ( #804 )
2019-12-19 17:20:50 +00:00
Hen Ry
553f5b063f
feat(gui): add Messages_de_DE.properties (PR #804 )
2019-12-19 20:14:46 +03:00
Skylot
a2df92dd68
fix(gui): correct app close on menu exit action
2019-12-14 15:14:20 +00:00
Soul Trace
e3055b95f6
feat(gui): support for renaming methods, classes and fields (PR #794 #791 )
...
* Add getRealFullName() to ClassNode and JavaClass and searchJavaClassByRealName() to JadxWrapper
Those methods is like getFullName() and searchJavaClassByClassName(), but for class names without aliases.
It is necessary for renaming classes/methods/fields.
* core: Make getFieldNode(), getMethodNode() and getRoot() public
This is necessary for renaming functionality
* jadx-gui: Add Rename popup menu entry (renames classes, methods and fields)
It allows user to rename classes, methods and fields.
It updates deobfuscation map and reload file.
This may be suboptimal, and maybe some RenameVisitor should be added.
Deobfuscation should be enabled in order to allow this.
2019-12-10 22:08:27 +03:00
Soul Trace
78eed8629c
feat(gui): reopened tabs on file reload (PR #793 #792 )
...
* Add getRealFullName() to ClassNode and JavaClass and searchJavaClassByRealName() to JadxWrapper
Those methods is like getFullName() and searchJavaClassByClassName(), but for class names without aliases.
It is necessary for renaming classes/methods/fields.
* MainWindow: Try to restore open tabs on deobfuscation toggle
Restore open tabs if possible when user toggles deobfuscation mode.
Try to scroll to the position before toggling deobfuscation mode (may be not exact cause of the comments).
2019-12-10 21:41:57 +03:00
Jan S
cf3e17c4b8
feat(gui): support APK signature v3 (PR #773 )
2019-11-01 19:31:24 +03:00
Skylot
d1ac43de33
fix(gui): add default contructor for classes serialized with GSON ( #752 )
2019-10-17 17:35:01 +03:00
Skylot
1cbaad3ec9
fix: make correct class members loading in jadx api ( #742 )
2019-08-25 19:53:12 +01:00
Skylot
a71bb7a532
fix(gui): yet another fix for broken find usage action
2019-08-12 10:32:38 +01:00