I wrote a class that is a timer for paint (Graphics& g) calls. And then I have a window that pops up and shows how much time each class is spending in it’s paint routine. I find it much easier than using a profiler to see what is affecting paint performance, mainly because I always have it open, so I immediately see if I change I made affected performance.
The downside is I need to hack it into juce every time there is a juce update. It would be nice if there was a macro kinda like JUCE_ENABLE_REPAINT_DEBUGGING, that let me wrap paint calls. maybe JUCE_ENABLE_PAINT_WRAPPING.
If it’s enabled, then the app has to provide two functions paintStarting (Component* c) and paintEnding (Component* c)
I know it’s a pretty niche request, but it would be nice.