Commit graph

508 commits

Author SHA1 Message Date
Nico Mexis
a1537d2746
Fix some NPEs 2021-07-19 13:13:55 +02:00
Konloch
9a866831c8 Code Cleanup 2021-07-19 04:09:34 -07:00
Konloch
244ed68599 Code Cleanup 2021-07-19 03:56:52 -07:00
Konloch
69b282aa2d Cleanup 2021-07-19 03:29:39 -07:00
Konloch
8116cacd49 Better Decompiler Options 2021-07-19 02:37:56 -07:00
Konloch
902eaf6b7c Consume The Scroll Event 2021-07-18 23:50:09 -07:00
Konloch
18c0607c8e Better CTRL + Mouse Wheel Zoom
This adds mouse wheel zoom functionality onto all of the searchable text panes. This also fixes a scrolling bug.
2021-07-18 22:36:19 -07:00
Konloch
1805df4c97 More Translations
Automated with online translation services
2021-07-18 16:01:48 -07:00
Konloch
a6a6eb5147 More Translations
All of the settings should have their English translation keys added now
2021-07-18 14:36:00 -07:00
Konloch
0973dfdf41 Better Functioning Last Directories
This makes it easier on the user by making the directory picking process a bit better
2021-07-18 12:53:30 -07:00
Konloch
3349dd65b7 Translations & Cleanup 2021-07-18 12:11:34 -07:00
Konloch
f6ce37f439 More Translations 2021-07-18 02:11:45 -07:00
Konloch
31cef469d4 More Translations & Cleanup 2021-07-17 13:51:00 -07:00
Konloch
d8c5d935b2 Fixed Indent 2021-07-17 13:14:43 -07:00
Konloch
37a05d5959 Hex-Only-View
To enable hex-only-view: Set Pane 1 to the Hex-Viewer, then set Pane 2 & 3 to None
2021-07-16 19:25:24 -07:00
Konloch
37df1802a9 Fixed Hex Viewer
This fixes the hex viewer as a decompiler option, it also attempts to solve #315 by allowing the contents in the hex editor to draw dynamically

This is just temporary until the hex editor is replaced
2021-07-16 18:41:33 -07:00
Konloch
80c4b4fb72 Code Cleanup 2021-07-16 14:55:46 -07:00
Konloch
cf6378d334 Added Default Component Icons
Fixes #84
2021-07-16 14:49:32 -07:00
Konloch
995158a8d2 JTree Rewrite
This is a better implementation of the managing the JTree. Instead of destroying and creating the tree each time a resource is imported. It's now preserved and the tree nodes are managed by the resource container
2021-07-16 13:55:03 -07:00
Konloch
130eddc7cc Merge branch 'master' of https://github.com/Konloch/bytecode-viewer 2021-07-16 12:16:06 -07:00
Konloch
0d8c1b96aa Reordered The English Translation Keys 2021-07-16 12:12:13 -07:00
Nico Mexis
78c6aac941
Dynamic ASM API 2021-07-16 20:30:53 +02:00
Konloch
4696818056 Workspace Refactoring 2021-07-15 20:50:05 -07:00
Konloch
45c9cd5d1a Display Opened File Path
A bit better for debugging which file the user has opened
2021-07-15 12:39:43 -07:00
Konloch
068c3c5560 Fixes Class Resource Reloading
Editing may have also been broken with this bug
2021-07-15 12:34:33 -07:00
Konloch
46f703db34 Unnecessary Class Check
This check isn't needed anymore, importing through importKnownFile does this already
2021-07-15 10:45:35 -07:00
Konloch
29c237bed4 Resource Types/Fixes 2021-07-15 10:38:32 -07:00
Konloch
39233ca3eb Swing Fixes
Call on the tree update from the swing thread
2021-07-15 08:29:42 -07:00
Konloch
0d27212f07 Rename Javap
Like Javac the official name contains a lowercase letter at the end
2021-07-15 08:28:47 -07:00
Konloch
9f50385717 Strict Resource Icons
Known resource type icons are now only shown for non-directories, or the root directory for each resource
2021-07-15 01:47:04 -07:00
Konloch
7b01aa607c Automatically Import Known Resources
Still a work in progress. If you open a know file-type through the resource list in BCV it will now attempt to automatically import that resource instead of displaying the binary text
2021-07-15 01:26:18 -07:00
Konloch
4d0021f2ef Cleanup 2021-07-15 00:55:18 -07:00
Konloch
170512023a Code Cleanup 2021-07-14 22:45:56 -07:00
Konloch
ced48c76fd Tabbed Console
A better solution to the plugin console for when you have multiple resources inside of BCV
2021-07-14 21:59:18 -07:00
Konloch
3e82f29b59 Console TODO 2021-07-14 07:42:15 -07:00
Konloch
206ca32dc0 Better Console Logging 2021-07-14 07:42:09 -07:00
Konloch
4ace08867c Fixed Python Paths 2021-07-14 07:41:23 -07:00
Konloch
d8e2e6ab0f Resource Refactoring
This introduces the Resource object which can be either a ClassFile or any other File type

ClassFiles get opened as a ClassViewer with mutliple BytecodeViewPanels

Everything else gets opened as a FileViewer
2021-07-14 04:58:35 -07:00
Konloch
b9b8d44cc1 Improved Resource Updating
Still a work in progress
2021-07-14 04:33:20 -07:00
Konloch
434d5cd58f Improved BCV Error Handling 2021-07-14 04:09:46 -07:00
Konloch
35561fa5ca More Resource Types 2021-07-14 03:34:45 -07:00
Konloch
07bbfaf299 Better Resource Importing 2021-07-14 03:29:36 -07:00
Konloch
c38bc180d9 Slightly Better Resource Importing 2021-07-14 03:25:02 -07:00
Konloch
ad660815f3 Improved Directory Importing 2021-07-14 03:11:59 -07:00
Konloch
c259ac70a2 Resource File Types
File Header Magic Numbers still need to be implemented but it's a start
2021-07-14 02:59:36 -07:00
Konloch
e684316844 New Translations
Added Estonian, Latvian, Lithuanian, Romanian, Slovak and Slovenian translations
2021-07-13 09:19:40 -07:00
Konloch
0a4d216f5a Improved Translations
Thank you to @ThexXTURBOXx
2021-07-13 08:59:51 -07:00
Konloch
7fddde9139 Merge branch 'master' of https://github.com/Konloch/bytecode-viewer 2021-07-13 08:27:48 -07:00
Konloch
eb225eaa79 Terminology Update
File Container has been changed to Resource Container
2021-07-13 07:33:32 -07:00
Nico Mexis
f6fde27253
Even better translations 2021-07-13 15:47:06 +02:00
Nico Mexis
cad751ecf0
Better German translation 2021-07-13 15:13:20 +02:00
Konloch
52803f410b Comments/TODOs 2021-07-13 05:34:04 -07:00
Konloch
1eda5e7f78 Updated For Plugin API Changes
This will make it easier on the user to inform them which file the class resources are in
2021-07-13 05:10:24 -07:00
Konloch
fc68fde546 Better Plugin Handling
This isn't a perfect solution since it will create a new console window for each resource, however it maintains compatibility and makes it easy on plugin authors

A new plugin class would be a good idea for a better alternative, then more advanced plugins could use that as the class base instead of just the.bytecode.club.bytecodeviewer.api.Plugin
2021-07-13 04:46:21 -07:00
Konloch
9f1877a81c Suggest PyPy 2021-07-13 04:05:44 -07:00
Konloch
2d289d1f9b Dark Theme Scrollbar Fixes
The actual fix is to use com.github.weisj.darklaf.components.OverlayScrollPane but this works for now
2021-07-13 04:05:38 -07:00
Konloch
5041fc5712 LAF Expansion
Thank you @weisJ!

This includes:
+ Better DarkLAF combability #317
+ More LAF Themes to select from
+ More translations
2021-07-13 03:44:03 -07:00
Konloch
3df104c86b Resource Refreshing 2021-07-13 03:37:28 -07:00
Konloch
33ec3f3fdb Extended BetterJOptionPane
This adds the showInputDialogue functions as well as the fixes for them
2021-07-13 03:36:39 -07:00
Konloch
67e2e0dfd0 Javap Fixes
Because of the design of using sysout it fails when being ran concurrently. Until the system has been redesigned to not use sysout (or a better solution for it is added) I've synchronized the javap disassembler

thankfully javap is fast so this shouldn't be that noticeable but it should be fixed one day
2021-07-13 03:35:48 -07:00
Konloch
e9f3163e1b Added Change ClassFile Versions Plugin 2021-07-13 03:33:49 -07:00
Konloch
ccd7f278bc Merge branch 'master' of https://github.com/Konloch/bytecode-viewer 2021-07-13 02:20:44 -07:00
Kalen (Konloch) Kinloch
cd3c9732a5
Merge pull request #318 from antonymcgreen/patch-1
russian translation fix
2021-07-13 01:39:15 -07:00
Konloch
410189fce6 Security Manager Fix 2021-07-13 00:44:51 -07:00
antonymcgreen
c6f12baef2
russian translation fix 2021-07-13 10:21:47 +03:00
Konloch
1b5f8e16db Python3 Check 2021-07-12 07:43:14 -07:00
Konloch
c27db9be9b Improved Javap 2021-07-12 07:42:56 -07:00
Konloch
c8b23818a4 Fixed Enjarify 2021-07-12 07:37:07 -07:00
Konloch
1d5c500ba8 Security Manager Fix 2021-07-12 07:18:36 -07:00
Konloch
b81577c6f0 Autodetect Python CLI
Still a WIP
2021-07-12 06:59:26 -07:00
liuxilu
b2d6818842
mandarin translation improved 2021-07-12 21:39:16 +08:00
Konloch
106549658f Resolved JFrameConsole Text Bug
This fixes the bug with large Strings causing the swing thread to lock up
2021-07-12 06:18:55 -07:00
Konloch
f349e6a8f1 Improved Javap 2021-07-12 05:50:23 -07:00
Konloch
600b88e05e Improved Javap 2021-07-12 05:18:22 -07:00
Konloch
f966f7b29f CLI Java Detection 2021-07-12 05:14:05 -07:00
Konloch
948ae90e50 Security Manager Cleanup 2021-07-12 05:13:35 -07:00
Konloch
216882c58e Flexible Blocking
This allows multiple security manager blocks and unblocks to happen without causing conflictions
2021-07-12 04:18:52 -07:00
Konloch
76aaf8f30f Javap Disassembler 2021-07-11 10:53:15 -07:00
Konloch
789ac13cd1 Cleaned Up Error Alerts 2021-07-11 09:52:07 -07:00
Konloch
7d09510194 Added Javap Disassembler
Solves #93
2021-07-11 09:41:33 -07:00
Konloch
46bee607aa JDK 9 Compatible
This removes the sun package dependency
2021-07-11 07:37:05 -07:00
Konloch
c2a9c0f51e Icon Resources API Change 2021-07-11 07:10:42 -07:00
Konloch
0325c2008e Restored Resource Exporting 2021-07-11 06:55:30 -07:00
Konloch
f1dc61f780 Disassembler Bug Fix 2021-07-11 06:39:09 -07:00
Konloch
64bce4c201 API Update 2021-07-11 05:37:13 -07:00
Konloch
21fe12b4a7 Lots
Fixes, API Changes, Cleanup, etc.
2021-07-11 05:33:18 -07:00
Konloch
715041366d CLI Adjustment 2021-07-11 05:01:32 -07:00
Konloch
cf42e4bf67 Added View Manifest Plugin 2021-07-11 04:26:03 -07:00
Konloch
5cbe3122e5 Added Plugin View APK Android Permissions 2021-07-11 04:16:54 -07:00
Konloch
7d140580ee Updated TODO 2021-07-11 02:31:56 -07:00
Konloch
540b48f3ee Fixed APK/DEX Importing 2021-07-11 02:31:34 -07:00
Konloch
b40c763db9 Comments 2021-07-11 02:22:47 -07:00
Konloch
717b2e466c Main Viewer GUI Cleanup 2021-07-11 02:17:46 -07:00
Konloch
56a6a4ebf3 Resource Container Cleanup 2021-07-11 02:14:42 -07:00
Konloch
ec5aabb7e9 Resource Container Fix 2021-07-11 01:52:42 -07:00
Konloch
845d9f253d Preserve File Order 2021-07-11 01:50:12 -07:00
Konloch
2ef221f6e1 Resource Viewing Improvements
All of the components that update resources should now function as normal again

The decompiler gui API has been improved to use less boilerplate when adding a new decompiler
2021-07-11 01:44:37 -07:00
Konloch
4ebdd2bdbc Removed Old Decompiler Setting Compatibility
Not a major break, this will force reset the decompiler settings for anyone using an older version of BCV

The editable pane will be disabled by default so you may need to re-enable that if you use it.
2021-07-11 01:07:31 -07:00
Konloch
d98f3d3e31 Improved Importing 2021-07-10 09:05:08 -07:00
Konloch
a7e399add9 Removed Preview Copy 2021-07-10 06:46:45 -07:00
Konloch
5a761cec4a Configuration Cleanup 2021-07-10 06:46:25 -07:00
Konloch
b7a9c8d7de Removed Preview Copy 2021-07-10 06:45:43 -07:00
Konloch
58ef4c4395 Krakatau/Enjarify Fix
This fixes Krakatau and Enjarify deployment
2021-07-10 06:05:37 -07:00
Konloch
7f95d80b86 Version Bump 2021-07-08 19:31:59 -07:00
Konloch
743b515f24 Translation Fixes 2021-07-08 18:58:27 -07:00
Konloch
6868d488eb Improved Mandarin Translation 2021-07-08 03:19:47 -07:00
Konloch
baaa2c0780 Translation Loading
Translations only need to be loaded by themselves now, English is the default on component creation
2021-07-08 02:33:03 -07:00
Konloch
7b724d00c2 Fix Korean 2021-07-08 02:32:09 -07:00
Konloch
342d60536b Verbose Fix 2021-07-08 02:24:28 -07:00
Konloch
9ab8ec7f8c More Command Line Options 2021-07-08 02:24:12 -07:00
Konloch
c4f77bd47b Translation Fix 2021-07-08 02:08:46 -07:00
Konloch
309f363cc5 Extended Translation 2021-07-08 01:56:36 -07:00
Konloch
0084e4c408 Translation Fix 2021-07-08 01:55:52 -07:00
Konloch
d651f43b62 Translated Component Fix
Components that lack base translations will overwrite with blank text, this preserves the default text until translation is applied
2021-07-08 01:53:08 -07:00
Konloch
dca90245e5 Better Plugin Integration
Instead of plugins running instantly you are given the option to edit them using the Plugin Writer
2021-07-08 01:50:57 -07:00
Konloch
42d914d7a6 English Fix 2021-07-08 01:36:44 -07:00
Konloch
8933a9a8c0 More Translations
Most components should be translated. All of the components that were hardcoded for English now work with translations.

All of the translations now include any missing translation keys.

Added translations for: Farsi, Finnish, Greek, Indonesian, Bengali, Italian, Korean,  Dutch, Polish, Swedish, Thai, Hebrew, Turkish, Ukrainian, Hungarian, Georgian, Javanese, Hausa, Swahili, Norwegian & Vietnamese
2021-07-08 01:22:39 -07:00
Konloch
27694a5ec6 Fixed Search Pane Selection Bug
This removes the scrollbar but fixes the selection bug caused by it
2021-07-07 17:53:57 -07:00
Konloch
c94ff17045 Extended BCV Default Size 2021-07-07 17:52:25 -07:00
Konloch
a4abb49d6a Better Console Printing 2021-07-07 16:49:06 -07:00
Konloch
f1b36e785f Merge branch 'master' of https://github.com/Konloch/bytecode-viewer 2021-07-07 15:06:52 -07:00
Nico Mexis
76d04bfe70
Update intro.german.html 2021-07-07 15:26:50 +02:00
Nico Mexis
fb3994f28b
Update src/main/resources/translations/html/intro.mandarin.html
Co-authored-by: Janmm14 <Janmm14@users.noreply.github.com>
2021-07-07 15:25:30 +02:00
Nico Mexis
e3fe393c55
Update src/main/resources/translations/html/intro.english.html
Co-authored-by: Janmm14 <Janmm14@users.noreply.github.com>
2021-07-07 15:25:22 +02:00
Nico Mexis
b2f3181f10 Updated German translation 2021-07-07 13:45:03 +02:00
Nico Mexis
8828d4a193 Added Discord Server link to intro 2021-07-07 13:44:51 +02:00
Konloch
820a086a93 More Translation Support 2021-07-07 03:39:29 -07:00
Konloch
29c816c13e Translations 2021-07-07 03:23:10 -07:00
Konloch
556c0ef1c8 Typo Fix 2021-07-07 02:01:53 -07:00
Konloch
bd636f2125 Translations & Better About Window 2021-07-07 02:00:14 -07:00
Konloch
f3c7c1881a Better Compiler Error Handling 2021-07-06 23:11:49 -07:00
Konloch
9af03cb465 DiskWriter Failsafe 2021-07-06 23:04:09 -07:00
Konloch
963e31408a Hotkeys After Startup
This fixes the bug with needing to click and wait for hotkeys to start working
2021-07-06 22:57:35 -07:00
Konloch
6af691edf9 Cleanup 2021-07-06 22:56:29 -07:00
Konloch
af26f2c257 CTRL + L Hotkey
Opens your last opened file. If there is a more well known global hotkey for this function it should be changed to that
2021-07-06 22:38:47 -07:00
Konloch
2dbcb8bb7d Cleanup 2021-07-06 21:45:39 -07:00
Konloch
c5b53be4b8 BCV API Change
This API change will break compatibility with most pre-existing plugins
2021-07-06 21:36:11 -07:00
Konloch
7eda960981 Dynamic Analysis Cleanup 2021-07-06 21:21:06 -07:00
Konloch
02115c4820 RCE Blocking Rename 2021-07-06 20:42:48 -07:00
Konloch
4af4764a71 ASM Resource Util 2021-07-06 20:41:49 -07:00
Konloch
33f524040b Global Hotkeys Cleanup 2021-07-06 20:07:55 -07:00
Konloch
99fde7156e Active Resource API Changes 2021-07-06 20:05:35 -07:00
Konloch
d6be70dfb2 Better Error Handling 2021-07-06 19:51:10 -07:00
Konloch
deb23d3dd3 Error Prompt Cleanup 2021-07-06 19:46:12 -07:00
Konloch
2a5977d980 Cleanup 2021-07-06 19:42:04 -07:00
Konloch
b6689c916d Updated Error Logging
Thank you to everyone who sends in stacktraces! This is the start of making it easier on you guys 👍
2021-07-06 18:10:09 -07:00
Konloch
ea507f6833 Updated Welcome Message 2021-07-06 17:53:29 -07:00
Konloch
febdeba457 Updated Error Handling 2021-07-06 17:52:00 -07:00
Konloch
ec91bd08e8 API Cleanup 2021-07-06 17:23:34 -07:00
Konloch
de8cb5b4e7 Launch Args Cleanup 2021-07-06 16:54:20 -07:00
Konloch
0a4f234841 Thread Cleanup 2021-07-06 16:53:37 -07:00
Konloch
e2a8857499 Global Hotkeys Cleanup 2021-07-06 16:08:08 -07:00
Konloch
b99f6bf98a Busy Status Cleanup 2021-07-06 15:57:42 -07:00
Konloch
9e5b4527ed Plugin Cleanup 2021-07-06 15:38:37 -07:00
Konloch
14b3b04661 ASM Rename Util Cleanup 2021-07-06 15:27:20 -07:00
Konloch
d52a5b450b API Update 2021-07-06 15:18:25 -07:00
Konloch
a96f2ed445 ClassNodeLoader Cleanup 2021-07-06 15:11:55 -07:00
Konloch
a6311d86ba Exception UI Cleanup 2021-07-06 15:10:50 -07:00
Konloch
b2d37f6adb Plugin Cleanup 2021-07-06 13:47:34 -07:00
Konloch
5509a659fb Started Replace Strings Cleanup 2021-07-06 13:38:45 -07:00
Konloch
dd4bec1446 Code Sequence Diagram Cleanup 2021-07-06 13:34:29 -07:00
Konloch
be2896ee3e EZ Injection Cleanup 2021-07-06 13:23:50 -07:00
Konloch
0998c54e54 Fix Compile Alert Messages 2021-07-05 17:26:11 -07:00
Konloch
11c3aae683 Decompiler View Types 2021-07-05 17:25:55 -07:00
Konloch
ce06cba71f Fixed Smali Assembler 2021-07-05 17:06:05 -07:00
Konloch
9eff9c331c Fixed Smali Disassembler 2021-07-04 21:52:13 -07:00
Konloch
2210bb9b0e Cleanup 2021-07-04 21:51:13 -07:00
Konloch
83e90cc276 Dev Mode 2021-07-04 21:50:41 -07:00
Konloch
bfc832ada8 Updated Notes 2021-07-04 21:50:28 -07:00
Konloch
964040e83c Fixed Recent Files & Plugins 2021-07-04 21:24:19 -07:00
Konloch
9f8c46bcdc Failsafe LAF Change
This might fix #312 I need to test it though
2021-07-04 21:09:10 -07:00
Konloch
52a3c2bfd0 Better Compiling 2021-07-04 20:37:01 -07:00
Konloch
122aa02d3d Warning Comment 2021-07-04 20:34:45 -07:00
Konloch
d8df05b202 Better JOptionPane 2021-07-04 20:34:37 -07:00
Konloch
f2ada1aae1 Plugin Templates Cleanup 2021-07-04 20:23:40 -07:00
Konloch
8b82fdccf1 Fixed Resource List Selection 2021-07-04 19:37:00 -07:00
Konloch
d18062fa52 Fixed Spam-Clicking Refresh 2021-07-04 19:36:31 -07:00
Konloch
63d7c17d0e Fixed Compiling
So far only Krakatau Assembler has been tested, so Java and Smali are probably still broken
2021-07-04 19:07:34 -07:00
Konloch
6efbc39ff6 Search Box Pane Cleanup 2021-07-04 19:06:15 -07:00
Konloch
72597102f4 Fixed Editable Pane 2021-07-04 18:10:58 -07:00
Konloch
ba6e59e2c3 Better Looking Busy Wait Icons 2021-07-04 03:23:14 -07:00
Konloch
e3a1d9b6f6 Better Loading Gif 2021-07-04 03:20:00 -07:00
Konloch
0d8280b0b9 Dynamic Busy Status
This also cleans up the UI for the Dark Mode theme
2021-07-04 02:25:16 -07:00
Konloch
c0eb9e944e Synchronized JarUtil ClassWriters
This should be re-evaluated, it's most likely not needed and it will slow down multi-pane decompilation

An alternative solution is generating the ClassNode List once, then storing it in a cache that can be quickly saved to disk. If a new file gets added regenerate the cache.
2021-07-04 01:56:25 -07:00
Konloch
854c4d622c TODO Cafebabe checking 2021-07-04 01:51:58 -07:00
Konloch
3ed65ad03e Fix Race Condition Nullpointer 2021-07-04 01:51:41 -07:00
Konloch
cd9bf24cad TODO Update 2021-07-04 01:51:05 -07:00
Konloch
5364d5eb95 API Changes 2021-07-04 01:50:45 -07:00
Konloch
33e2b1d6db Since Tag Cleanup 2021-07-04 00:04:08 -07:00
Konloch
4c0bffd40d Search Cleanup 2021-07-04 00:03:40 -07:00
Konloch
0c53463fd7 Compiler Cleanup 2021-07-03 23:24:54 -07:00
Konloch
7b26b62084 Decompiler Cleanup 2021-07-03 23:18:06 -07:00
Konloch
08304d3db1 Decompiler Cleanup 2021-07-03 22:59:42 -07:00
Konloch
231fc93298 Update MainViewerGUI.java 2021-07-03 22:20:33 -07:00
Konloch
22c3f36372 Resource View Cleanup 2021-07-03 22:20:25 -07:00
Konloch
ea6cacf0c1 Malware Scanner Cleanup 2021-07-03 12:29:50 -07:00
Konloch
2aefec533b Auto Compile Code Cleanup 2021-07-03 12:29:31 -07:00
Konloch
5c0eadf643 EAR Support
Can you hear me now?
2021-07-01 16:50:07 -07:00
Konloch
1cf65954c5 Dialogue Cleanup 2021-07-01 16:08:56 -07:00
Konloch
9003b83e68 Code Cleanup 2021-07-01 15:23:09 -07:00