JUCE 4.3.1: modal PopupMenu in Cubase offline processing


#1

My plugin GUI opens a PopupMenu to display various choices when clicking on some of its controls. This works for all occasions so far, except when opening the plugin as a VST3 offline processor on an audio fragment in Cubase.

In this scenario the menu opens and an item can be selected - but the modal menu doesn’t close on mouse click. [Enter] seems to work somehow, although it does not always return the right selection!?

(The enter issue is a general issue, which in other occasions was not observed so far because mouse clicks are usually used to confirm the selection.)


#2

I haven’t had time to look into this yet - have you made any further progress in debugging this? Seems odd that “offline” processing should somehow affect the GUI.

There is a workaround where you can force the combo menu to not create it’s own window. See this post:


#3

Hi!

Is there anything new about this?

I am also facing this issue which is not only a problem with menus.
Any window that a plugin opens on the desktop does not react on mouse clicks when the plugin was opened in the Cubase/Nuendo offline processing window on macOS. That desktop window will behave like it is blocked by another window.
When opening an AlertWindow from the plugin, the problem is even worse: The AlertWindow is opened behind the plugin and can not be used, even if you move it so that you can see it. It does not recognize any keyboard or mouse input. As the AlertWindow completely blocks all other Cubase Windows, you can only use “Force Quit” to get out of that situation.

This can be reproduced with the JUCE Demo plugin (adding an AlertWindow or a Component that is put to the Desktop). It also happens with several commercial plugins that use JUCE. Other plugins that are not based on JUCE do not have such problems.

Regards,
Gregor


#4

Well, you should never open alert windows in plug-ins. Show a child-component inside your editor instead.

For popups, I think it becoming more and more advisable to override the LookAndFeel method LookAndFeel::getParentComponentForMenuOptions to return your top-level editor component. This way popups are a child component of your editor and will work as expected. I guess, one day, the JUCE team should make this be the default.


#5

I believe that would limit the ComboBox popup menu to being inside the Editor Component… which wouldn’t be good.

Rail


#6

Yes that’s true but JUCE will take care of positioning it in such a way that you can see the most number of items etc. It’s also mandatory to use for AUv3 as AUv3 does not allow you to open any top-level windows.


#7

:man_facepalming: