Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4.X primary TODO list. #792

Open
19 of 63 tasks
Col-E opened this issue May 19, 2024 · 0 comments
Open
19 of 63 tasks

4.X primary TODO list. #792

Col-E opened this issue May 19, 2024 · 0 comments
Labels

Comments

@Col-E
Copy link
Owner

Col-E commented May 19, 2024

  • Welcome
  • In-application help
  • External help
    • Write user documentation for 4.X
    • Write developer documentation for 4.X
  • Menu Bar
    • Plugins menu
  • Workspace explorer
  • Workspace summary
  • Class views
  • Decompilers
    • Fallback (port from 3x)
  • File views
    • PDF
    • HTML (As XML)
    • Markdown
  • Change/history viewer
    • Change viewer UI between original state and modified state
      • Class support
      • File support
    • Support exporting as .repatch file format so Recaf can apply the patch again later
  • Search
  • Plugins
    • Plugin manager UI
    • Link to plugin development guide to make it easy to start
    • Create plugin templates
  • Config
    • Investigate what would improve the layout beyond our automated setup. Its laid out in a bit of a "jumbled" way at the moment.
    • Font size sliders
      • This is sadly a bit tricky with our theme setup. There are a lot of small edge cases in the theme that rely on exact sizes. I found that a more reasonable solution was to just implement a generic window scaling. It'll apply when restarting Recaf.
    • Organize into sane ordering (vs alphabetic of key names)
  • Context menus
    • Organize into sane ordering
    • Creation of new content
    • Additional actions
      • Classes
        • Generate method overrides (prompt to show which methods can be overriden)
      • Packages / Directories
        • Export (we have single-file export, but not package/dir exports)
  • Assembler
  • Android support (Replace our dependency on Google's R8 with our own implementation that better adapts to our model in Recaf)
  • Call graph UI
    • Port 3X UI to 4X
    • Add UI to method context menus
  • Mapping
    • Correlation mapping: See fabric's matcher for details
      • The backing structure similarity logic can be useful in other places too
  • Improved instrumentation
    • Fetch META-INF/MANIFEST.MF for application info
    • Option to copy remote java.class.path paths to a local workspace without attaching (If all paths are found)
    • Option to run arbitrary payloads (Pass over a Runnable instance and invoke it in a safe manner, reporting back results)
  • Simulation
    • Rewrite a smaller version of SSVM and integrate it to support:
      • Simulate (for yielding a result)
      • Optimize (for using the simulation to optimize code patterns)
@Col-E Col-E added the 4.X label May 19, 2024
@Col-E Col-E pinned this issue May 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant