Skip to content

Conversation

@NebelNidas
Copy link
Member

@NebelNidas NebelNidas commented Oct 3, 2022

Following up the discussion on Discord from May, I've split up the deobfuscation panel into two: A Partially Deobfuscated Classes panel and a Fully Deobfuscated Classes one.

image

While being at it, here are some related changes I made:

  • Added a class counter to the individual panels
  • Improved readability of the moveClassTree function, fixed a bug introduced over two years ago via QOL fixes - Volume 2 #239 which rendered the last else condition unreachable
  • Made a common ClassPanel abstract class which the three other class panels inherit from. Also moved them into a new subpackage, although I wasn't quite sure how to name it, so please tell me if you have a better name
  • Removed some duplicated code from GuiController.java, it now uses the methods from Gui.java
  • Renamed DeobfPanelPopupMenu to ClassPanelContextMenu, as it can be used on all three panels now

It may not be the cleanest of implementations, but hey, it works 😄

@NebelNidas NebelNidas marked this pull request as draft October 3, 2022 23:20
@NebelNidas
Copy link
Member Author

NebelNidas commented Oct 6, 2022

Works fine with my testing. The only issues left are ones that have to be fixed by other PRs:

@NebelNidas
Copy link
Member Author

This PR has some serious performance problems when importing larger JARs, and to be fair, the UI isn't great either with how clamped up everything gets, I think this needs a larger overhaul later down the line when my new IR stuff is finished and Matcher support gets added.

@NebelNidas NebelNidas marked this pull request as draft September 13, 2023 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant