Commit graph

452 commits

Author SHA1 Message Date
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
eb225eaa79 Terminology Update
File Container has been changed to Resource Container
2021-07-13 07:33:32 -07: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
410189fce6 Security Manager Fix 2021-07-13 00:44:51 -07: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
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
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
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
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
820a086a93 More Translation Support 2021-07-07 03:39:29 -07:00
Konloch
29c816c13e Translations 2021-07-07 03:23:10 -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
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
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
Konloch
e13a0635b3 v2.10.13 2021-07-01 14:56:30 -07:00
Konloch
f3d5f25743 Built-in Script Editor
Still a work in progress
2021-07-01 14:54:10 -07:00
Konloch
c209db4f5b Instruction Printing On Malware Scanner 2021-07-01 04:34:40 -07:00
Konloch
007955b2ba Added Thread Titles 2021-07-01 02:48:10 -07:00
Konloch
373fc38ad2 Saving After Actions 2021-07-01 02:06:12 -07:00
Konloch
5175316002 Cleaned Up Load Settings 2021-07-01 02:05:01 -07:00
Konloch
ad6dff9082 Added Translated JCheckBox 2021-06-30 15:27:23 -07:00
Konloch
370f2b9a1c Extended Translation Support 2021-06-30 15:19:54 -07:00
Konloch
400aa6e6dd Moved GUI Resources 2021-06-30 13:56:15 -07:00
Konloch
b82b1133c2 Renamed Loading Gif 2021-06-30 13:52:48 -07:00
Konloch
79fbe34da1 Google Translate Malay
Automatically translated through google translate
2021-06-30 13:10:37 -07:00
Konloch
b2e8b85a96 Alphabetized 2021-06-30 13:03:05 -07:00
Konloch
97d4d51a04 Google Translate Portuguese
Automatically translated through google translate
2021-06-30 12:48:26 -07:00
Konloch
3032986021 Google Translate Japanese
Automatically translated through google translate
2021-06-30 12:36:16 -07:00
Konloch
8c901c9f5b Google Translate French
Automatically translated through google translate
2021-06-30 12:21:18 -07:00
Konloch
032057813d Google Translate Spanish
Automatically translated through google translate
2021-06-30 12:16:44 -07:00
Konloch
eee8e47568 Google Translate Russian
Automatically translated through google translate
2021-06-30 12:05:53 -07:00
Konloch
38f2f6b570 Google Translate Arabic
Automatically translated through google translate
2021-06-30 12:03:39 -07:00
Nick Ufer
1fb03177cb
feat: more german translation 2021-06-29 23:50:26 +02:00
Konloch
74cddb9e80 Fix Binary Build 2021-06-29 11:35:58 -07:00
Konloch
a2724daa8a XAPK Support 2021-06-29 11:31:38 -07:00
Konloch
fdf8e9baa5 XAPK Support 2021-06-29 11:25:46 -07:00
Konloch
7dd66d675c Silence Exceptions 2021-06-29 11:24:47 -07:00
Konloch
1302a9c271 Merge branch 'master' of https://github.com/Konloch/bytecode-viewer 2021-06-29 10:45:52 -07:00
Konloch
924684090c Removed ZKM & Allatori To Fix #285 2021-06-29 09:33:23 -07:00
Konloch
b2f7fcb9e9 Better Translation Debugging
It will now detect missing keys along with missing components for translation strings
2021-06-29 09:11:26 -07:00
Konloch
7faad9b94f Extended Translation Support 2021-06-29 08:32:35 -07:00
Konloch
fdcd49883b Cleanup 2021-06-29 08:17:42 -07:00
Konloch
7ba9e03cb0 Hopefully Fixes Linux #267 and #227 2021-06-29 08:17:31 -07:00
Konloch
e1d2196977 Resolves #235 2021-06-29 04:12:49 -07:00
Konloch
65341c642f Settings Cleanup 2021-06-29 02:41:29 -07:00
Konloch
9438079ac1 Added Translation Support
This still needs a lot more work but most of the menu bar has been mapped out, all that's left are the settings for the decompilers.

Titlebars, buttons and other dialogues still need to be mapped out, more of a proof of concept than anything.
2021-06-29 02:41:08 -07:00
Konloch
812f4ea3cd Code Cleanup 2021-06-28 18:25:24 -07:00
Konloch
fc36f3562d Swing Cleanup 2021-06-28 17:54:39 -07:00
Konloch
f6cf25cd2f I Lied! Freezing Is Still Here 2021-06-28 17:51:25 -07:00
Konloch
3efffe6ad1 Change LAF Without Reboot 2021-06-28 17:47:32 -07:00
Konloch
fe57e4f099 Darcula Swapped With DarkLAF
Now that the swing interaction is working lag free, DarkLaf runs without any performance issues. DarkLAF is an updated version of Darcula so it makes sense to only support one, but if anyone wants it added back we could look at implementing dynamic/custom LAFs down the road using reflection
2021-06-28 17:27:17 -07:00
Konloch
fa766a4851 Fixed The Swing UI Freezing/Lag
This should resolve any issues when first opening a class resource or refreshing it.
2021-06-28 17:17:30 -07:00
Konloch
4e7edaada1 UI Freeze TODO 2021-06-28 17:06:50 -07:00
Konloch
2421bd3a30 Added DarkLAF
I had a few issues with DarkLaf so as a backup I kept the old Darcula Theme as well.

DarkLaf is based off of Darcula so they are very similar, eventually it may be better to drop Darcula support for DarkLaf once all of the bugs are resolved.
2021-06-28 17:05:18 -07:00
Nico Mexis
8b97fbffc8
Fix recent files 2021-06-28 11:36:37 +02:00
Konloch
db0dbdb9dc Malware Scanner Tidying 2021-06-28 00:41:33 -07:00
Konloch
c15103e78e Update MiscUtils.java 2021-06-28 00:40:24 -07:00