Commit Graph

520 Commits

Author SHA1 Message Date
Konloch 74c88d3933 Smarter Security Manager
Removed the blocking concept and replaced with a hardcoded whitelist
2021-07-19 08:39:59 -07:00
Konloch b7b72f957f Last Directory Bug Fix 2021-07-19 07:36:40 -07:00
Konloch 05388b574b Better Last Directories 2021-07-19 07:11:14 -07:00
Konloch b8b4312e37 Settings Dialogue Graphical Bug 2021-07-19 06:24:35 -07:00
Konloch c70c052f53 Prefer Process Builder 2021-07-19 06:23:42 -07:00
Konloch f21cf41455 Multiple Decompilers At Once 2021-07-19 06:23:30 -07:00
Konloch e8b9f39ddf Merge branch 'master' of https://github.com/Konloch/bytecode-viewer 2021-07-19 05:29:04 -07:00
Konloch 1328a258b2 Security Manager Fix
Fixes #246
2021-07-19 05:28:59 -07:00
Konloch 0eb9622634 Settings Dialogues 2021-07-19 05:23:57 -07:00
Konloch b678d98949 GUI Cleanup 2021-07-19 04:22:50 -07:00
Konloch 3971923102 Last Directory Bug Fix 2021-07-19 04:22:38 -07:00
Konloch f30714f340 Better Plugin Writer 2021-07-19 04:22:29 -07:00
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