After a recent JUCE update (5.3.0) I am experiencing strange host application behaviour with parameters managed by ValueTreeState.
I am using Ableton Live mostly, which disables any automation that is present on any track, if a user turns a knob or moves a slider when the transport is playing. This is expected behaviour.
However, recently (after the update I’m pretty sure) my plugin + Ableton have started disabling automation upon hitting a point of automation (like there was some user action involved, but in fact just Live’s own automation being sent to a plugin parameter).
What I think could be happening is that Ableton notifies the plugin of updated value, but is unaware that said update was in fact coming from, somehow making it back round to Ableton through the plugin where Ableton regards it as “user input” and disables the automation lane.
The result is that parameter automation in Live is unusable with my plugin. I confirmed it was working with an older build, built with a pre-5.3.0 version of Projucer.
Has anyone else experienced this? Are there workarounds, or should I be aware of any API changes that have changed the default strategies when notifying hosts of parameter changes? Can automation parameters from host somehow be “muted” inside the plugin so it doesn’t make it back to the host, resulting in erroneous “feedback”?
EDIT: What also happened in the meantime is that I changed the order of some SliderAttachment and Slider as I started experiencing crashes when they were deallocated in the wrong order. I also updated my code to use Slider::Listener instead of SliderListener.