diff --git a/modules/juce_gui_basics/detail/juce_ComponentHelpers.h b/modules/juce_gui_basics/detail/juce_ComponentHelpers.h index c83dbe1e98..5a34ab7ecd 100644 --- a/modules/juce_gui_basics/detail/juce_ComponentHelpers.h +++ b/modules/juce_gui_basics/detail/juce_ComponentHelpers.h @@ -32,6 +32,8 @@ ============================================================================== */ +#include "juce_ScalingHelpers.h" + namespace juce::detail { diff --git a/modules/juce_gui_basics/detail/juce_ScalingHelpers.h b/modules/juce_gui_basics/detail/juce_ScalingHelpers.h index 457fcd1b34..68d8cf71d4 100644 --- a/modules/juce_gui_basics/detail/juce_ScalingHelpers.h +++ b/modules/juce_gui_basics/detail/juce_ScalingHelpers.h @@ -32,6 +32,8 @@ ============================================================================== */ +#pragma once + namespace juce::detail { diff --git a/modules/juce_opengl/opengl/juce_OpenGLContext.cpp b/modules/juce_opengl/opengl/juce_OpenGLContext.cpp index fef9f788bd..a02f90ac00 100644 --- a/modules/juce_opengl/opengl/juce_OpenGLContext.cpp +++ b/modules/juce_opengl/opengl/juce_OpenGLContext.cpp @@ -32,6 +32,8 @@ ============================================================================== */ +#include + #if JUCE_MAC #include #endif @@ -1102,19 +1104,12 @@ public: detach(); } - static void clearCachedImagesInComponentTree (Component& root) - { - root.setCachedComponentImage (nullptr); - - for (auto* child : root.getChildren()) - clearCachedImagesInComponentTree (*child); - } - void detach() { auto& comp = *getComponent(); stop(); - clearCachedImagesInComponentTree (comp); + detail::ComponentHelpers::releaseAllCachedImageResources (comp); + comp.setCachedComponentImage (nullptr); context.nativeContext = nullptr; }