t0m
January 14, 2021, 2:57pm
41
@t0m : I was hitting this on iOS. CGContextGetClipBoundingBox() does NOT return the area requested by “[view setNeedsDisplayInRect …]” even though the context (or something else) is clipped in a way that makes the clipping look correct when JUCE_ENABLE_REPAINT_DEBUGGING is 1. The result is, that each components paint() is called when the Component hierarchy is traversed because the clip region returned by the CoreGraphicsContext is always the whole darn screen. So if you have some components tha…
I’ve recently been investigating very similar behaviour on macOS
We’ve discovered a major performance issue with painting, using JUCE apps running in Big Sur - but apparently not in Catalina or other previous versions. Moving any slider or other control, or just mousing over a control, causes the entire application window to invalidate and repaint, causing every control to be re-rendered.
I’ve created a very simple JUCE project to illustrate this:
Compile this application against JUCE 6.0.5 and run on the Big Sur operating system. If you run the applicati…
and I think a similar change would resolve the issue you’re describing. However, I have been unable to reproduce the issue. Would you be able to put a very simple example together? I realise you originally reported this a long time ago, but any direction would be helpful.