2666 Commits

Author SHA1 Message Date
Skylot 6b54cde89c fix: use wrap layout for options in search dialog, add size limit option 2025-05-29 22:44:21 +01:00
Skylot 59b560b553 fix: lazily create dirs in default file getter implementation 2025-05-29 17:59:26 +01:00
Skylot 8b08ac3806 fix: wrap MethodThrowsVisitor insns processing in try/catch (#2441) 2025-05-27 20:01:45 +01:00
Skylot d9d4180581 feat: use parallel jobs to delete files in directory (#2436) 2025-05-27 20:01:45 +01:00
Skylot 33f93ddc8a feat: move variable name apply from codegen to new pass (#2422) 2025-05-26 23:20:45 +01:00
Yaroslav bcd0c949dc feat(gui): use list component for recent projects on start page (PR #2513)
* feat(gui): use list component witch recent projects on start page

* fix: spotless check

* move classes into one package and some minor changes

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-25 20:35:35 +01:00
Yaroslav fc0f1f9a1c fix(gui): validate extensions list in file dialog (PR #2515)
* fix(gui): fixed export file without extensions (close #2514)

* don't add null extensions

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-25 20:23:36 +01:00
Yaroslav abd64007e2 fix(gui): validate hex address in GotoAddressDialog (PR #2512)
chore: use check if entered valid hex address from GotoAddressDialog & make error style search field if hex search value not valid in hex viewer
2025-05-24 23:00:18 +01:00
Skylot fb02e32a6a chore: don't use nullable annotations from RxJava 2025-05-24 22:16:10 +01:00
Skylot f33a2e4768 fix: for static synchronized methods remove top synchronized block (#2493) 2025-05-24 22:04:32 +01:00
Yaroslav 3d8e5e5851 chore: migrate from old unsupported rxjava2 to rxjava3 (PR #2511) 2025-05-24 21:56:23 +01:00
Yaroslav 646ee2d963 fix(gui): minor improved search dialog & small refactor for search fields (PR #2510)
* fix(gui): minor improved search dialog & small refactor for search fields

* fix: removed unused key string

* fix(gui): added icon for active tab in SearchDialog
2025-05-24 21:04:59 +01:00
Jan S. b6f27d8a1a feat(zip): provide direct InputStream of ZIP entries (PR #2509)
* chore: provide direct InputStream of ZIP entries

* use limited stream, return bytes without using stream

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-24 20:36:10 +01:00
Skylot 97d04edb01 fix(xapk): new implementation to reduce zip unpack and fix NPE (#2501) 2025-05-24 00:09:29 +01:00
Yaroslav 2486c981a8 fix(gui): improve colors in usage tree, some UI fixes (PR #2506)
* fix(gui): refactor code in UsageDialogPlus

* fix(gui): added padding between buttons in package exclusion dialog & fixed crash

* fix(gui): added padding between buttons in settings dialog

* fix: fix javadoc

* fix: fix javadoc

* fix: fix javadoc
2025-05-23 23:15:16 +01:00
MewtR b7a8a2879e feat(gui): add option to disable the tooltip that pops up on hover (PR #2505)
feat(gui): add option to disable the tooltip that pops up on hover
2025-05-23 22:08:06 +01:00
Yaroslav 092e897104 fix(gui): fix rename package behaviors (PR #2500)
* fix(gui): fix rename package behaviors

* disable rename for default and synthetic packages

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-22 23:26:39 +01:00
Yaroslav a0a9f7fd41 feat(gui): notify user if code has non-displayable character with current font (PR #2490)
* feat(gui): notify user, if code has non-displayable character in current font (fix #621)

* fix(gui): improve check showing undisplayed chars on current font

* fix code style

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-22 23:05:05 +01:00
Little Hour Y 00f0f5547b fix(gui): using actual tree in usage tree dialog (PR #2503)
* A tree - shaped usage rendering scheme has been added

* A tree - shaped usage rendering scheme has been added - i18n update

* A tree - shaped usage rendering scheme has been added - Enhance the interactive experience

* A tree - shaped usage rendering scheme has been added - Jtree Render

---------

Co-authored-by: y <y@a.com>
2025-05-22 22:02:31 +01:00
Yaroslav 00608f8e51 feat(res): use file headers to detect extension for obfuscated resources (PR #2495)
* feat(res): add feature to use headers for detect resource extensions if resource obfuscated

* fix(res): read first 4kb data, for detect headers & use utf8 charset for decode bytes to string
2025-05-20 21:07:41 +01:00
Little Hour Y d0351a88ba feat(gui): a tree structure usage search (PR #2498)
* A tree - shaped usage rendering scheme has been added

* A tree - shaped usage rendering scheme has been added - i18n update

---------

Co-authored-by: y <y@a.com>
2025-05-20 20:46:07 +01:00
Yaroslav bee476895c feat(tools): improve tool for sync and update I18N lines (PR #2494)
* feat(tools): add to NLSAddNewLines tool remove lines if it not found on default reference & update commented untranslated line from reference

* fix: sync i18n translation from english reference file

* rename class and task, adjust code style

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-19 19:17:07 +01:00
Yaroslav 580f25faae fix(res): fix decode xml attributes value (PR #2492)
* fix(res): now when decoding attributes used namespace (fix #1675)

* fix: code formatted

* fix: some code improved on ManifestAttributes class
2025-05-19 18:31:31 +01:00
Skylot 1d1ca7d0c0 fix: process synthetic resource inner classes using common method (#2482) 2025-05-18 22:58:37 +01:00
Skylot dbf4527ce6 chore: update dependencies 2025-05-17 23:29:38 +01:00
Yaroslav ec726d6ca1 fix(gui): update resource.arsc nodes after opened tab with resource ids (PR #2489)
* fix(gui): update resource.arsc nodes after opened tab with resource ids list by double click (fix #2488)

* Update jadx-gui/src/main/java/jadx/gui/treemodel/JResource.java

---------

Co-authored-by: skylot <118523+skylot@users.noreply.github.com>
2025-05-17 22:51:55 +01:00
Yaroslav be1c02455f feat(gui): added dialog for select methods for generate frida class snippet (PR #2487)
feat(gui): add dialog for select methods for generate frida snippet
2025-05-16 18:14:33 +01:00
Yaroslav aee1e86398 fix(gui): restore tree state after renaming (PR #2486)
fix(gui): restore tree state after renaming
2025-05-15 20:54:50 +01:00
Yaroslav c0d721bea1 feat(gui): added feature to close all left tabs (#1390) (PR #2484)
feat(gui): added feature to close all left tabs (fix #1390)
2025-05-15 20:32:05 +01:00
Yaroslav e19a456642 feat(gui): added support view and open more resource files (PR #2483)
* feat(gui): added support view and open more resource files

* fix(gui): remove svg extension from resource types

* fix(gui): use error dialog from common utils

* fix: reformat code
2025-05-15 18:50:19 +01:00
Yaroslav acd57930cc fix(gui): improve apk signature loading speed (PR #2481)
fix(gui): improve spk signature loading speed (fix #1827)
2025-05-14 19:35:24 +01:00
Yaroslav 73348e5183 feat(gui): new HexViewer (PR #2469)
* feat(gui): rewrite hex viewer (#2415)

* fix: resolved merge conflict

* fix: resolved spotless checks

* fix: try fix CodeQL checks

* fix: fixed checkstyle checks

* fix: always reset selection on hex viewer by left mouse button

* fix: always reset selection on hex viewer by left mouse button

* chore(gui): changed hex viewer to bined lib

* fix: fixed checkstyle checks

* fix: fixed goto address dialog

* chore(gui): added search on hex viewer & updated bined library

* fix: remove commented code

* fix: removed useless code

* fix: removed useless code

* fix: try fix CodeQL scanning

* fix: try fix CodeQL scanning

* fix: try fix CodeQL scanning

* fix(gui): fixed search bar on hex viewer

* fix(gui): fixed is hex string checker

* fix(gui): fixed typo
2025-05-14 19:34:33 +01:00
Little Hour Y 32c92dd9a8 feat(gui): add "Copy All" button to Search dialog (PR #2480)
* add copy all button in CommonSearchDialog

* fix i18n test error

---------

Co-authored-by: ymoon <ymoon@ymoon.com>
2025-05-10 19:05:03 +01:00
nitram84 8bbdbfc563 feat: generate missing throws declarations, validate exceptions (#2441) (PR #2475)
* fix: generate missing throws declarations, validate exceptions (#2441)

* use ClspGraph.isImplements to check base classes, some code improvements

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2025-05-09 21:08:41 +01:00
Yaroslav fd6cb2451b fix(gui): improved preview tab behaviors (PR #2477)
* fix(gui): improved preview tab behaviors

* Update jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java

---------

Co-authored-by: skylot <118523+skylot@users.noreply.github.com>
2025-05-08 21:53:15 +01:00
Yaroslav 47647bbb9a feat(gui): add Preview Tab Feature (PR #2474)
* feat(gui): created simple preview mode (#756)

* feat(gui): fixed opening code preview tab, if open from available tabs

* fix(gui): rollback mouse events for tree
2025-05-04 20:17:00 +01:00
Skylot e31d697cd9 fix: check and report invalid magic in '.dex' files (#2473) 2025-05-03 21:55:53 +01:00
Skylot a796d15289 fix(gui): add missing annotations color for dynamic theme (#2471) 2025-05-03 21:15:06 +01:00
Skylot f56eb271a1 feat(gui): allow to set code area theme with custom code (#2471) 2025-05-03 20:24:49 +01:00
Yaroslav fbebcb9845 feat(gui): add dynamic code editor theme from UI theme (PR #2471)
fix(gui): created dynamic theme for code editor (#1763)
2025-05-02 17:10:27 +01:00
Skylot 79c91634ad build: set Java 24 for windows bundle 2025-05-01 20:13:51 +01:00
Skylot f6e12d71a0 chore: update gradle and dependencies 2025-05-01 19:22:16 +01:00
JustFor 62835fbade fix(gui): update Messages_zh_CN.properties (PR #2470)
sync new text
2025-04-30 18:59:20 +01:00
Skylot 07c66b5c3c fix(tests): fix paths check on Windows 2025-04-29 22:31:29 +01:00
Skylot e3aa49aaa9 feat: add gradle export templates, support android app/lib and simple java 2025-04-29 21:54:40 +01:00
Skylot 9981949a2b feat(api): add 'unload' method to JadxPlugin (#2463) 2025-04-20 21:44:47 +01:00
Skylot ea6492e5ba fix(gui): properly handle excluded classes in code search (#2432) 2025-04-18 22:30:00 +01:00
Skylot 03d4cb134f build: downgrade java to version 21 for windows bundle 2025-04-15 22:42:39 +01:00
Skylot 37b0b09f25 chore: update dependencies 2025-04-15 21:50:27 +01:00
Skylot 1e75544636 refactor: deprecate temp methods which uses global temp dir 2025-04-15 21:47:52 +01:00