OpenGLContext for Plugins - Attach to PluginEditor or Child Component?

For my JUCE plugin, I want it’s entire UI to be rendered using OpenGL. To achieve this, I need to attach an OpenGLContext instance to some top level component in the UI.

Is it okay to attach the OpenGLContext to the PluginEditor? If my memory is correct, I read a forum post a while back where @fr810 said the OpenGLContext should not be attached to the PluginEditor as this causes glitches in some hosts, and instead, the OpenGLContext should be attached to a child Component of the PluginEditor which contains all the UI that you want to render with OpenGL.

My memory of this may be incorrect, and I cannot find reference to this original post after a decent amount of searching.

Is there any actual issue with attaching an OpenGLContext to the PluginEditor in JUCE 6+?

You can attach in any of your child components or the top-level one:

// header
juce::OpenGLContext openGLContext_;

// constructor
openGLContext_.attachTo(*getTopLevelComponent());

// destructor
openGLContext_.detach();

I understand it is possible to attach the OpenGLContext to either a top level component, like PluginEditor, or a child of the editor, but I am wondering if anyone has had issues with attaching specifically to the PluginEditor.

My plugin is using a single-context OpenGL rendering system where the same OpenGLContext is used to render both JUCE components and multiple custom shader programs in separate OpenGLRenderers. In my particular case, some of these custom shader programs have some positioning glitches when I attach to the PluginEditor instead of a child component. I am unsure if these positional glitches are due to my own implementation or if other people have noticed issues with attaching the OpenGLContext to the PluginEditor.