Short answer, PeaZip uses system's default text color, so it is not possible to change the text colors arbitrarily. System should pass an appropriate text color value.
Long answer:
In an ideal case when the system is set in dark mode the system's default text color will be set to white, or some light color, and it will be applied consistently on all elements of the widget set, see in example PeaZip on macOS in dark mode.
This work quite consistently also on various Linux DE, even if there are exceptions I'm trying to understand better.
Windows is on the opposite end: dark mode pass - by design - light mode colors to Win32 apps. It is possible to set Windows to high contrast mode to pass correct colors to Win32 apps, but it needs - by design - to be set separately, and passes - by design - colors which are a bit different from those of the "real" dark mode so the look and feel does not really matches native "modern" apps in dark mode.
To avoid all of that using arbitrary text color is quite difficult to accomplish: text rendering is handled differently in different elements of the widget set (text in forms, text in buttons, text in the listview and in the treeview, text of menus, etc), and on top of that for each of those special cases each supported platform (Linux, macOS, and Windows) will behave differently.
Rewriting all of those components (on all platforms) will be an huge task, and would come at a cost in term of stability and performances compared to native components.
Hello, in release 8.0, published today, there are two updates which may be interesting for you:
- new option in password dialog "Force typing password interactively" will switch PeaZip to use console to launch backend binaries; in console now you will be able to type the password without anything being passed from one process to another, which is helpful in aforementioned security cases. Also, with this option enable you can generate scripts which will require users to enter password interactively rather tahn running unattended, so can be used in an environment where you cannot trust to save the password in the script, nor to have it in console history (or task manager).
- PEA was updated to 1.01; it does no longer flashes the GUI when run in hidden mode. Also, with hidden_report or batch_report modes it will save a detailed log of the operation without asking for user interaction. The new version will also provide meaningful exit codes so it is easier to integrate with other applications and scripts. You can find all details about PEA 1.01 at https://peazip.github.io/pea_help.pdf (parameters are described at page 18).
You can find the list of commands for pea in the pdf help file https://peazip.github.io/pea_help.pdf
After PEA format specs you can find the list of commands starting at page 17.
Pea was written as graphic application rather than as console application so it can be hidden, but (at present level of development) the GUI cannot be completely removed.