Closed dbadb closed 1 year ago
I don't think this is a choc "issue" so this is probably the wrong place to discuss it.. maybe move to discord or somewhere else that's better for chatting? But most likely what's wrong is that the void window handle that choc gives you is not the thing that the plugin is expecting it to be - e.g. you're passing an NSWindow and it's expecting an NSView* or something like that
Hi Julian - your point is well taken and your hint is probably helpful too.
closing issue, moving elsewhere, ...
I'm trying to use choc-goodness to "host" JUCE-based CLAP plugins. I've had good results so far on windows (!) but less-so on darwin and linux. For my testing, I've been using Vital and Surge XT and they both crash similarly on MacOS. Most likely, I'm missing an important piece of understanding. I've verified that choc_WebView works great on all-three platforms.
In this different case, I create a choc_DesktopWindow and then pass its windowHandle to the CLAP plugin's
set_parent
method (via CLAP_EXT_GUI). It's at this point that I get the crash on MacOS. Below is the lldb stack trace on a M1-mini running Ventura 13.2.NSWindow window]: unrecognized selector sent to instance
Seems like JUCE Component's
createNewPeer
is triggering a method-dispatch that is not understood/implemented by choc_DesktopWindow. Is it possible that I need to create an internal view, analogous to the choc_WebView, to host the plugin?I realize that issues like this are difficult/impossible to manage since they involve multiple interoperating components. I will continue to delve deeper but thought it worthwhile to create this issue "for the record" and in the hopes that it may ring someone's bell.