summaryrefslogtreecommitdiff
path: root/libs/ardour/session_vst.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/session_vst.cc')
-rw-r--r--libs/ardour/session_vst.cc24
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);
}