Fully implement IComponentHandlerBusActivation

We now support all VST 3.6.8 features. (or technically, also all VST
3.6.10 features)
This commit is contained in:
Robbert van der Helm
2021-01-14 16:42:19 +01:00
parent d9d508a47e
commit 1d9b60b481
5 changed files with 48 additions and 29 deletions
@@ -449,6 +449,7 @@ tresult PLUGIN_API Vst3PluginProxyImpl::setComponentHandler(
// callback later
component_handler_2 = component_handler;
component_handler_3 = component_handler;
component_handler_bus_activation = component_handler;
unit_handler = component_handler;
unit_handler_2 = component_handler;
@@ -334,6 +334,8 @@ class Vst3PluginProxyImpl : public Vst3PluginProxy {
component_handler_2;
Steinberg::FUnknownPtr<Steinberg::Vst::IComponentHandler3>
component_handler_3;
Steinberg::FUnknownPtr<Steinberg::Vst::IComponentHandlerBusActivation>
component_handler_bus_activation;
Steinberg::FUnknownPtr<Steinberg::Vst::IUnitHandler> unit_handler;
Steinberg::FUnknownPtr<Steinberg::Vst::IUnitHandler2> unit_handler_2;
+11
View File
@@ -149,6 +149,17 @@ Vst3PluginBridge::Vst3PluginBridge()
.context_menu_args = std::nullopt};
}
},
[&](const YaComponentHandlerBusActivation::RequestBusActivation&
request) -> YaComponentHandlerBusActivation::
RequestBusActivation::Response {
return plugin_proxies
.at(request.owner_instance_id)
.get()
.component_handler_bus_activation
->requestBusActivation(
request.type, request.dir,
request.index, request.state);
},
[&](const YaContextMenu::GetItemCount& request)
-> YaContextMenu::GetItemCount::Response {
return plugin_proxies.at(request.owner_instance_id)