Parameter changes failing to notify host to mark document as needing saving

Hey guys, I’m having trouble getting my plugin to notify the host/DAW that a parameter has changed and thus needs saving (i.e. the little asterisk by the document name usually). I’ve tried many different methods, including setValueNotifyingHost, implementing beginChangeGesture and endChangeGesture on the sliderDragStarted and sliderDragEnded callbacks (and using setValueNotifyingHost on the sliderDragEnded callback), as well as processor.updateHostDisplay()). The parameter seems to work fine with automation, and can record automation fine, so I have no idea why the host is not being marked as changed.

Thanks a lot in advance!

Bumping because I’m still completely stumped on this.

Can you please tell which OS, Host and plug-in format you are dealing with?

You might also want to play with the juce demo plugin and see how that differs from your code.

Windows 10 64 bit, using Ableton with a 64 bit VST dll.

I just tested in OSX 10.12, using Logic 10.3.1 with the plugin built as an AudioUnit and it actually works fine there. So the problem seems limited to windows.

It may very well also be a problem limited to the VST2 format implementation in Live, and not so widespread to the whole Windows platform.

In your place, I’d try it in some other host (REAPER for instance) to see if also that one doesn’t get the “dirty” flag set.

Something you could do in the direction of letting the host know that something changed, is to make sure that from your getStateInformation() you return a buffer that is different from the one you returned prior to the change. It’s possible that the host is doing a comparison based on that.

I will try Reaper at some point, but I should note that other plugins I own and use in Ableton don’t appear to have this problem.