Thanks. I think the difference might be that I am running as an extension. I'm not the only one with the issue (see link in original post) but the solution there didn't work for me and I'm not sure why.
Sean Reilly on 30 Jul, 2021 10:09 PM
We've added a lot of code recently to try to automatically keep button (and other UI component) colors inline with the currently selected color theme. So you will be working against the system (well, moneydance anyway) to override the colors. However I am surprised that setting the colors in updateUI() doesn't do the trick.
The only thing I can think of is to possibly call .updateUI() again after the button is created. I know that updateUI() is called in the super-class's constructor even before your own constructor is run, but calling it after your own button constructor might help a bit.
To be honest, I have gotten really frustrated dealing with swing's look and feels and color customisations, and I've probably hacked in some color overrides which weren't necessary.