NationalSecurityAgency / ghidra

Ghidra is a software reverse engineering (SRE) framework
https://www.nsa.gov/ghidra
Apache License 2.0
51.28k stars 5.84k forks source link

Unify color/font configuration #1785

Closed ubitux closed 1 year ago

ubitux commented 4 years ago

The way Ghidra opens ways of customizing the interface is currently far from ideal, and it's very tricky to get a consistent view in the whole tool.

In the details, as of 9.1.2, here are all the menus where we have to set the font:

And here are where we have to set the colors:

A better solution I would see would be to first have a common view for all the available color and font customizations. Then presets (or palettes of colors) could be added easily. The remaining UI widgets can be stylized through the engine itself (typically by picking GTK+).

All the different views of the UI would use these shared color and font settings instead of their own: there is no reason someone would wish for an inconsistent experience between the different view.

astrelsky commented 4 years ago

If there isn't a hidden "common view"/global font color, style, etc setting somewhere then I highly agree. While it is nice to be able to customize things individually it should always be possible to choose the default behavior.

saruman9 commented 4 years ago

BTW, many colors are hard-coded and can't be changed ever from the options menu (issues, for example: #49, #1324, #632, #1390, etc). I rewrote many such places in the source code for changing colors to a dark, but I’m sure that there are still hard-coded places.

Relates to issue #13. Ghidra's developers have in plans to unify settings of UI and create theme manager.

pabx06 commented 4 years ago

some time it is as easy as to comment a line: https://github.com/pabx06/buildghidra/blob/8c75127ec14aaf9dadc963d9dfa8cc99ae24fff1/patch/InfoPanel.patch#L27 so the default applied look and feel do the coloring. image

dragonmacher commented 1 year ago

You can now change most application colors, icons and fonts by editing the current Theme.

Fixed by e657a701416877f7a77b635662d30cfc25f1b5f0