OpenGL components not always redrawing after maximize/restore



Inside my main window I have 3 separate custom components which all do OpenGL rendering. Specifically they each create an OpenGLContext, call setRenderer(this) on the context (they each implement OpenGLRenderer), and then call attach(*this) on the context. The actual rendering is done in renderOpenGL() and that all seems to be working fine.

The only problem I see is when I maximize the window and then restore it to original size. After maximizing everything looks fine, but after restoring, one of the components doesn't redraw itself - instead it's just filled with the background color of the parent window. Further maximize/restores don't make it reappear. However, after minimizing and restoring it will appear again as normal.

Any idea why this would be happening? I'm using JUCE 3.2.0, on OS X 10.9.5.





The OS you're using would be relevant info here!

And not sure how we could reproduce it.. if you can give us a code snippet that gives the same problem then we could take a look.


I'm seeing this on OS X 10.9.5, as previously stated.

I haven't been able to create a simple repro case yet. If I find time I'll try to poke at it and see if I can narrow down where the problem might be. I'll let you know if I find anything.