diff options
Diffstat (limited to 'libs/ardour/session_vst.cc')
-rw-r--r-- | libs/ardour/session_vst.cc | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/libs/ardour/session_vst.cc b/libs/ardour/session_vst.cc index 461934b5f4..61805be2cd 100644 --- a/libs/ardour/session_vst.cc +++ b/libs/ardour/session_vst.cc @@ -28,6 +28,9 @@ #include "ardour/windows_vst_plugin.h" #include "ardour/vestige/aeffectx.h" #include "ardour/vst_types.h" +#ifdef WINDOWS_VST_SUPPORT +#include <fst.h> +#endif #include "i18n.h" @@ -100,26 +103,9 @@ intptr_t Session::vst_callback ( case audioMasterIdle: SHOW_CALLBACK ("amc: audioMasterIdle\n"); - // call application idle routine (this will - // call effEditIdle for all open editors too) - -#if 0 // TODO -> emit to GUI OR better delegete to fst/fst - - // This allows the main GUI window to update if needed. - // Some plugins take over the GUI event loop - // which causes the main GUI to freeze while the plugin GUI continues to run. This code - // prevents the main GUI from being frozen. - - do { -#ifdef GDK_WINDOWING_X11 - gtk_main_iteration_do(false); -#else - gtk_main_iteration() -#endif - } while (gtk_events_pending()); +#ifdef WINDOWS_VST_SUPPORT + fst_audio_master_idle(); #endif - printf("audioMasterIdle\n"); - if (effect) { effect->dispatcher(effect, effEditIdle, 0, 0, NULL, 0.0f); } |