From aa60a4c295dab8cac5c78ee875b5d84681a9c4fb Mon Sep 17 00:00:00 2001 From: falkTX Date: Fri, 15 Oct 2021 00:53:40 +0100 Subject: [PATCH] Workaround for GL based UIs not giving up their context --- plugins/Common/IldaeilUI.cpp | 2 +- plugins/Common/PluginHostWindow.cpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/Common/IldaeilUI.cpp b/plugins/Common/IldaeilUI.cpp index ed174c8..eb98a49 100644 --- a/plugins/Common/IldaeilUI.cpp +++ b/plugins/Common/IldaeilUI.cpp @@ -294,10 +294,10 @@ public: if (fPlugin == nullptr || fPlugin->fCarlaHostHandle == nullptr) return; + fPluginHostWindow.hide(); if (fDrawingState == kDrawingPluginGenericUI || fDrawingState == kDrawingPluginEmbedUI) carla_show_custom_ui(fPlugin->fCarlaHostHandle, 0, false); - fPluginHostWindow.hide(); } void createPluginGenericUI(const CarlaHostHandle handle, const CarlaPluginInfo* const info) diff --git a/plugins/Common/PluginHostWindow.cpp b/plugins/Common/PluginHostWindow.cpp index f262964..ce99aa5 100644 --- a/plugins/Common/PluginHostWindow.cpp +++ b/plugins/Common/PluginHostWindow.cpp @@ -141,6 +141,7 @@ struct PluginHostWindow::PrivateData #elif defined(DISTRHO_OS_MAC) if (view != nullptr) [view setHidden:YES]; + [NSOpenGLContext clearCurrentContext]; #elif defined(DISTRHO_OS_WINDOWS) #else pluginWindow = 0;