JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, LV2 and AAX audio plug-ins.
We debugged this issue a bit further and could find some indications what causes the problem:
VST2 plugin UI creation starts from juce_VSTPluginFormat.cpp and the instantiation of a VSTPluginWindow. This contains a AutoResizingNSViewComponentWithParent object which itself has a timer that resets the child view 30ms after creation. The timeout is exactly the time it takes until the KORG plugin UI vanishes. Removing the timer resolves the problem. But I suspect the timer is there for a reason...
Looking into the related code with git blame showed that the `AutoResizingNSViewComponentWithParent´ helper class was modified in commit 7c0d0ae. Most notably, the explicit setting of the child size has been removed. Maybe that could also be related to the problem we encounter with the KORG plugin.
Steps to reproduce:
This was also reported in the JUCE forum.
We debugged this issue a bit further and could find some indications what causes the problem:
VST2 plugin UI creation starts from
juce_VSTPluginFormat.cpp
and the instantiation of aVSTPluginWindow
. This contains aAutoResizingNSViewComponentWithParent
object which itself has a timer that resets the child view 30ms after creation. The timeout is exactly the time it takes until the KORG plugin UI vanishes. Removing the timer resolves the problem. But I suspect the timer is there for a reason...Looking into the related code with git blame showed that the `AutoResizingNSViewComponentWithParent´ helper class was modified in commit 7c0d0ae. Most notably, the explicit setting of the child size has been removed. Maybe that could also be related to the problem we encounter with the KORG plugin.