Bug in Juce 8, OpenGL and MouseEvents

When attaching an OpenGL context to a PluginEditor or a MainComponent, mouseEnter and mouseExit stop working on TextButton and most probably other components. That worked flawlessly until Juce 7 but stopped working in Juce 8.

Found on MacOS Sequoia.

Is this still the case on the develop branch? We’ve made some changes to mouse handling recently.

Yes, just checked. Still there.

I’ve just tested on my Sequoia machine and mouse handling appears to be working correctly for Applications and PluginEditors.

I tested Plugin standalone and a standalone application, and VST3, AU plugins in FL Studio, Ableton, Logic and Reaper.

Do you have any MouseListeners configured or have you disabled mouse input on any parent components via Component::setInterceptsMouseClicks?

Did you attach an OpenGL context to the PluginEditor or MainComponent?
Btw. i mentioned that in Juce 7 it works perfectly, but not in Juce 8. And i mentioned also, that it is only MouseEnter and MouseExit, i still get clicks.

Yes, this was with an OpenGLContext attached in all cases.
I specifically tested mouseEnter and mouseExit behaviour for parent component and child components.

I will see if I can reproduce it on another machine.

Also getting this issue with only the mouseEnter and mouseExit methods after updating from Sonoma 14.3 to Sequoia 15.1, and switching to the latest develop branch. I was previously using JUCE v8.0.0 on Sonoma, and now I’m on v8.0.4 on Sequoia.

An OpenGLContext is attached to a PluginEditor in my case and the above methods aren’t getting called anywhere in the component hierarchy, unless the mouse is actually clicked somewhere. Tried toggling setContinuousRepainting() and setComponentPaintingEnabled() on the GL context, but it made no difference.

Thank you for reporting. Fixed here:

2 Likes

Solved. Thank you.