-
Notifications
You must be signed in to change notification settings - Fork 6.1k
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
Theme / Style Configuration Support? (Dark Mode) #13
Comments
You can write an extention to do so. Checkout the JavaDocs. |
Looks like you can hack it a little bit to install custom swing themes.
|
Looks like this repo was deleted, at least it 404's for me |
I guess @quosego removed the project? Anyways, updated the post with another link, but in case it 404's again, you can always check the root :) |
You can manually change the colors of some windows in |
@SocraticBliss I switched over to another title: https://github.com/quosego/Ghidorah and removed my half completed plugin development tutorial. |
Hope this helps @SocraticBliss and anyone else looking at this. |
@quosego I'm in awe, fantastic work! |
The selection color can be tweaked in settings too. I don't remember which setting in particular controls it though. Try |
@SocraticBliss hate me / love me, I changed the project name due to redundancy and breaking up what I'm currently doing non-public wise. Ghidra offers alot of features. Will take some time to clean out what I currently have now once more to make it even more flush. My next task will be doing graphs and custom displays. This should provide a general understanding for you or others: You can also tweak existing settings via property key-value pairs without even having to go through settings / ui. A hint is to search around features and framework sourcecode for 'Preferences'. |
No worries @quosego, I'll just remove the previous link :) Great work! |
Adding support for the Darcula LAF would be awesome - open source and available here. Already used in JetBrains IDEs and Netbeans, so it will be familiar to users and it has been proven to work in large applications. |
I've made a dark theme, there is a script to configure your code_browser.tcd : https://github.com/elliiot/ghidra_darknight |
It'd be awesome to see the next release allow the graph background color to be changed, that's the one thing that's breaking the dark theme experience currently. |
Also this is a pretty stellar piece of work: https://digmi.org/2019/03/26/ghidracula/ |
Agreed, unfortunately |
@osardar Might be worth making a repo for it until they decide to post it? Don't want this to become another ida-toolbag scenario :P |
I briefly played around with rebuilding |
Ghidra's out-of-the-box "dark theme" will continue to be the inverted color scheme for the foreseeable future, but it looks like the community is providing great solutions...keep up the good work! |
Hey, sorry to reopen this @ryanmkurtz, but I've got the Darcula patch to work on 9.2. Not sure how to proceed, is this something that can even be added/would be accepted into the program? It looks much nicer than the default theme, although I'd recommend leaving the inverted scheme in still. I've had to patch out some of the IP checks since I don't understand the manifest format, providing I can fix those, would you like me to make a pull request? Or should I keep these in a seperate repo Here's a screenshot (on Linux) to gague interest from the developers The biggest issue I'm having atm is the fact Darcula isn't supported anymore really, if anyone has any recomendations for a lookandfeel plugin that looks.. less terrible, let me know |
Looks good, but why not make it a plug-in instead? Much easier to manage.
|
I dont know how to it with a plugin... many variable are Colors field with private scope... |
BTW guys it seems quosego deleted his account and repo. I had a copy of his plugin, so I put it in my repositories: All credit goes to him, I haven't changed a thing! |
Sorry to bring this thread back but is there any plans for a native theming engine or support @ryanmkurtz. The solutions in this repo are out of date now and require significant amounts of work to bring up to date with the new builds, and maintaining them. For example: https://github.com/roblabla/GhiDracula-Ext by @roblabla gets a good part of the way there, but it requires using bytedude to hot patch JVM emitted code, and it only affects the “LookAndFeel” rather than the entire UI experience. I understand it was developed in an environment where people are used to those sorts of Java GUIs and where a nice theme/UX wasn’t a primary goal, but if you look at IDEs, not many people use the default themes on IDEs or text editors and I think Ghidra is the same. Ghidra is an excellent tool and as much as we may not want to admit it, one of the reasons people choose other programs is in part the UI/UX, I know of about 4 people who want to use Ghidra but can’t because there’s no dark theme (and I don’t count inverted mode as a dark theme) I understand developer time is limited but imo this is an important part to get Ghidra to mass adoption, is there any way the community could sponsor this feature? I would be happy to donate to developers who would implement this, not an insignificant amount of money either, that’s how important I think this is, it’s also an accessibility issue sadly. I totally understand a response might be “why don’t you implement it yourself” which my response is, I have, but it’s not nearly as easy to update, edit, etc than a native theme engine would be, there’s a dozen places to change various theme settings even per toolbox item, then there’s the global Java LaF which affects some components but not others, and plugins will immediately break. I asked a few years ago and the response from @dragonmacher was “we’re looking at doing this ourselves” when I offered my patch set/plug-in, but nothing seems to have come from that, is that still the plan? Also just to be clear I don’t mean to come off as criticising, I’m not, I’m just concerned maybe this request has gotten lost internally or maybe the value of it wasn’t understood outside of the NSA, you’ve made an amazing tool and open sourcing it is incredible, it just needs a few comfort features to be able to eclipse the bigger players such as IDA, your decompiler is already far better for most things, especially embedded. |
@agnosticlines my version of ghidra.hues works out of the box with the latest Ghidra: |
Oh that’s super cool! I only tried the original, it still doesn’t change the toolbox themes etc, which a more cohesive first party theme manager might provide, I’m gonna check this out though, thank you! hues is limited to just RGB colours though right? It can’t change the actual lookandfeel of specific elements? |
I know there's a few things ghidracula-ext doesn't stylize, but none of them are inherently impossible to do. The main one, the decompiler/disassembler view, is intentionally not styled because ghidra already has a theme system for it. I could override the defaults if the user didn't provide a theme (and it's something I've been meaning to do, but haven't found the time for yet). The biggest drawback of this approach is that it requires a bit of maintenance time to keep it working across ghidra updates, and I haven't been very good at putting that work in X). |
@agnosticlines my recommendation is to change the look and feel to "Metal", turn on inverted colors, then use the ghidra.hues plugin to pick the darker color. It works very well for me for years, and while IDA's dark themes are more polished, there's little practical difference for day to day usage. The fonts on the other hand... Java font rendering is terrible, at least on Linux. That definitely needs an improvement, and it can be improved, since JetBrains IDEs render fonts very nicely in Linux. |
Would be nice if this wasn't Windows centric.......bummer. I'll have to try and sort it on Mac OS. Still thank you for your work. |
Ghidra now includes a Theme feature. Fixed by e657a70 |
Is your feature request related to a problem? Please describe.
I understand that it's possible to Invert Colors to have a sort of semi-Dark Mode....
Main Window ->Edit->Tool Options->Tools->Use inverted colors
But it would be nice to have a few sets of pre-configured color schemes that we can switch back and forth between.
Describe the solution you'd like
Something along the lines of Notepad++'s Style Configurator might be nice, along with a preview of how it will look?
The text was updated successfully, but these errors were encountered: