Update plug-in parameter names broken from 6.0.8

Hi,

I used to call updateHostDisplay() to notify the DAW that a parameter name was changed.
This worked fine up to juce 6.0.8

I noticed the updateHostDisplay function interface was recently changed, should I should change the way I call updateHostDisplay?

Context:
VST3
Mac OS Big Sur 11.2
Mac arm
Studio One 5.1.2.62686 (intel build)

Jelle

1 Like

Are you using the very latest develop commit? There was a brief regression in the behaviour of updateHostDisplay when called with no arguments, but I believe this issue is fixed now (i.e. consistent with the old behaviour).

That being said, if you know that only the parameter info needs updating, I’d recommend passing ChangeDetails{}.withParameterInfoChanged (true). This will prevent the wrapper from sending other potentially expensive notifications to the host.

If you find that this isn’t working on the latest develop, please let me know and I’ll investigate.

I just tried to build with the latest commit on develop.

Now I get a different compile error:
member 'ChangeDetails' found in multiple base classes of different types.

Since this commit:
AudioProcessor: Fix default behaviour of updateHostDisplay · juce-framework/JUCE@d08b526 · GitHub

I have a class that inherits both AudioProcessor and AudioProcessorListener and that causes this error. Is there any chance this double declaration can be fixed? Or should I change my code?

This can be fixed by explicitly qualifying the name. The simplest way to do this is probably to add a line like this to your derived class:

using ChangeDetails = AudioProcessorListener::ChangeDetails;

Then, you can use ChangeDetails unqualified throughout the rest of the class.

1 Like

Running using the latest develop commit solves the parameter name issue. Thanks!

2 Likes