juce_ListBox correctly updates the opaque component attribute in response to colourChanged() (line 872 ).
However, it seems that the initial state of the ListBox does not have Opaque set, even though the default theme’s background listbox color is solid white. Components are not opaque by default. This might not matter so much because the Viewport would normally fully occlude the ListBox although I am a bit shaky on how it all works.
I think that ListBox ctor should have these two lines added:
setOpaque (findColour (backgroundColourId).isOpaque());
Sorry if I am exposing my lack of understanding of how this all works…I am new.
Please let me know if my analysis is wrong