diff --git a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt index 0b364143f2..1cbb704e96 100644 --- a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt +++ b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt @@ -2135,6 +2135,8 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" @@ -4741,6 +4743,8 @@ set_source_files_properties( "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj index a665599474..499296c112 100644 --- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj @@ -2605,6 +2605,9 @@ true + + true + true @@ -4462,6 +4465,7 @@ + diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters index 9aa3b8c567..0fb75231ab 100644 --- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters @@ -3382,6 +3382,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -7779,6 +7782,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj index 563756f528..b1ce3d1fc6 100644 --- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj @@ -2605,6 +2605,9 @@ true + + true + true @@ -4462,6 +4465,7 @@ + diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters index 190dfdcba7..8851360193 100644 --- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters @@ -3382,6 +3382,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -7779,6 +7782,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt index e29532cfc7..cc322ba0dc 100644 --- a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt +++ b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt @@ -1897,6 +1897,8 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" @@ -4163,6 +4165,8 @@ set_source_files_properties( "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj index f2b5bad5de..7c4344c289 100644 --- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj +++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj @@ -2298,6 +2298,9 @@ true + + true + true @@ -3917,6 +3920,7 @@ + diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters index 663f7cc20f..5c1f3f3100 100644 --- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters +++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters @@ -2899,6 +2899,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -6789,6 +6792,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt index a3344a9f26..e1b2c92bc3 100644 --- a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt +++ b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt @@ -2027,6 +2027,8 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" @@ -4446,6 +4448,8 @@ set_source_files_properties( "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj index 21b898e892..438085532c 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj @@ -2432,6 +2432,9 @@ true + + true + true @@ -4150,6 +4153,7 @@ + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters index 8d5265970e..6b0a3c25d0 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters @@ -3106,6 +3106,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -7224,6 +7227,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj index b427001eab..4c88e3f89f 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj @@ -2432,6 +2432,9 @@ true + + true + true @@ -4150,6 +4153,7 @@ + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters index 4d5a052a12..e0abc080ed 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters @@ -3106,6 +3106,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -7224,6 +7227,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt index a5fd7e0851..e743e0a767 100644 --- a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt +++ b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt @@ -1916,6 +1916,8 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" @@ -4262,6 +4264,8 @@ set_source_files_properties( "../../../../../modules/juce_gui_basics/detail/juce_AlertWindowHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_ButtonAccessibilityHandler.h" "../../../../../modules/juce_gui_basics/detail/juce_ComponentHelpers.h" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp" + "../../../../../modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_CustomMouseCursorInfo.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusHelpers.h" "../../../../../modules/juce_gui_basics/detail/juce_FocusRestorer.h" diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj index d1e8c3e786..993437686a 100644 --- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj +++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj @@ -2319,6 +2319,9 @@ true + + true + true @@ -4015,6 +4018,7 @@ + diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters index db995759f9..43f7543ab1 100644 --- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters +++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters @@ -2953,6 +2953,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -6951,6 +6954,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj index 864493b659..4a0cdcf5e3 100644 --- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj +++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj @@ -1461,6 +1461,9 @@ true + + true + true @@ -2715,6 +2718,7 @@ + diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters index b945c7a562..04cc52b656 100644 --- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters +++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters @@ -1792,6 +1792,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -4593,6 +4596,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj index f35568c1b0..36a1d29064 100644 --- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj +++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj @@ -1461,6 +1461,9 @@ true + + true + true @@ -2715,6 +2718,7 @@ + diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters index f02d009a38..bd919d3745 100644 --- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters +++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters @@ -1792,6 +1792,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -4593,6 +4596,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj index a72517aece..5537a0c849 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj +++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj @@ -2440,6 +2440,9 @@ true + + true + true @@ -4262,6 +4265,7 @@ + diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters index a711cd88d6..34eb2eac29 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters +++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters @@ -3154,6 +3154,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -7383,6 +7386,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj index 3bb964978a..8d4b2af44e 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj +++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj @@ -2440,6 +2440,9 @@ true + + true + true @@ -4262,6 +4265,7 @@ + diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters index c25d3f3491..2ccbb18b5f 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters +++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters @@ -3154,6 +3154,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -7383,6 +7386,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj index d84d407b09..e6eb829988 100644 --- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj +++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj @@ -2318,6 +2318,9 @@ true + + true + true @@ -3991,6 +3994,7 @@ + diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj.filters b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj.filters index 8472645122..62abda9a53 100644 --- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj.filters +++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_DynamicLibrary.vcxproj.filters @@ -2950,6 +2950,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\drawables @@ -6918,6 +6921,9 @@ JUCE Modules\juce_gui_basics\detail + + JUCE Modules\juce_gui_basics\detail + JUCE Modules\juce_gui_basics\detail diff --git a/modules/juce_audio_plugin_client/juce_audio_plugin_client_AU_1.mm b/modules/juce_audio_plugin_client/juce_audio_plugin_client_AU_1.mm index 1f3a919380..5d70af4c07 100644 --- a/modules/juce_audio_plugin_client/juce_audio_plugin_client_AU_1.mm +++ b/modules/juce_audio_plugin_client/juce_audio_plugin_client_AU_1.mm @@ -75,6 +75,7 @@ JUCE_END_IGNORE_WARNINGS_GCC_LIKE #include #include #include +#include #if JucePlugin_Enable_ARA #include @@ -1747,6 +1748,10 @@ public: { lastEventTime = eventTime; + if (auto* peer = getPeer()) + if (detail::ComponentPeerHelpers::isInPerformKeyEquivalent (*peer)) + return false; + auto* view = (NSView*) getWindowHandle(); auto* hostView = [view superview]; diff --git a/modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp b/modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp new file mode 100644 index 0000000000..6a39f615a2 --- /dev/null +++ b/modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.cpp @@ -0,0 +1,48 @@ +/* + ============================================================================== + + This file is part of the JUCE framework. + Copyright (c) Raw Material Software Limited + + JUCE is an open source framework subject to commercial or open source + licensing. + + By downloading, installing, or using the JUCE framework, or combining the + JUCE framework with any other source code, object code, content or any other + copyrightable work, you agree to the terms of the JUCE End User Licence + Agreement, and all incorporated terms including the JUCE Privacy Policy and + the JUCE Website Terms of Service, as applicable, which will bind you. If you + do not agree to the terms of these agreements, we will not license the JUCE + framework to you, and you must discontinue the installation or download + process and cease use of the JUCE framework. + + JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/ + JUCE Privacy Policy: https://juce.com/juce-privacy-policy + JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/ + + Or: + + You may also use this code under the terms of the AGPLv3: + https://www.gnu.org/licenses/agpl-3.0.en.html + + THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL + WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF + MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED. + + ============================================================================== +*/ + +#if JUCE_MAC + +namespace juce::detail +{ + +bool ComponentPeerHelpers::isInPerformKeyEquivalent (const ComponentPeer& peer) +{ + jassert (dynamic_cast (&peer) != nullptr); + return static_cast (&peer)->inPerformKeyEquivalent; +} + +} // namespace juce::detail + +#endif diff --git a/modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h b/modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h new file mode 100644 index 0000000000..08e61912e3 --- /dev/null +++ b/modules/juce_gui_basics/detail/juce_ComponentPeerHelpers.h @@ -0,0 +1,49 @@ +/* + ============================================================================== + + This file is part of the JUCE framework. + Copyright (c) Raw Material Software Limited + + JUCE is an open source framework subject to commercial or open source + licensing. + + By downloading, installing, or using the JUCE framework, or combining the + JUCE framework with any other source code, object code, content or any other + copyrightable work, you agree to the terms of the JUCE End User Licence + Agreement, and all incorporated terms including the JUCE Privacy Policy and + the JUCE Website Terms of Service, as applicable, which will bind you. If you + do not agree to the terms of these agreements, we will not license the JUCE + framework to you, and you must discontinue the installation or download + process and cease use of the JUCE framework. + + JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/ + JUCE Privacy Policy: https://juce.com/juce-privacy-policy + JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/ + + Or: + + You may also use this code under the terms of the AGPLv3: + https://www.gnu.org/licenses/agpl-3.0.en.html + + THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL + WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF + MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED. + + ============================================================================== +*/ + +#if JUCE_MAC + +namespace juce::detail +{ + +struct ComponentPeerHelpers +{ + ComponentPeerHelpers() = delete; + + static bool isInPerformKeyEquivalent (const ComponentPeer& peer); +}; + +} // namespace juce::detail + +#endif diff --git a/modules/juce_gui_basics/juce_gui_basics.cpp b/modules/juce_gui_basics/juce_gui_basics.cpp index dc294ba8e5..e70d1a3401 100644 --- a/modules/juce_gui_basics/juce_gui_basics.cpp +++ b/modules/juce_gui_basics/juce_gui_basics.cpp @@ -190,6 +190,8 @@ #include "native/juce_NativeMessageBox_mac.mm" #include "native/juce_MainMenu_mac.mm" #include "native/juce_FileChooser_mac.mm" + #include "detail/juce_ComponentPeerHelpers.h" + #include "detail/juce_ComponentPeerHelpers.cpp" #endif #include "native/juce_MouseCursor_mac.mm" diff --git a/modules/juce_gui_basics/native/juce_NSViewComponentPeer_mac.mm b/modules/juce_gui_basics/native/juce_NSViewComponentPeer_mac.mm index 55df15b0f0..e23f36d04c 100644 --- a/modules/juce_gui_basics/native/juce_NSViewComponentPeer_mac.mm +++ b/modules/juce_gui_basics/native/juce_NSViewComponentPeer_mac.mm @@ -1731,6 +1731,7 @@ public: bool isStretchingTop = false, isStretchingLeft = false, isStretchingBottom = false, isStretchingRight = false; bool windowRepresentsFile = false; bool isAlwaysOnTop = false, wasAlwaysOnTop = false, inBecomeKeyWindow = false; + bool inPerformKeyEquivalent = false; String stringBeingComposed; int startOfMarkedTextInTextInputTarget = 0; @@ -2332,6 +2333,8 @@ struct JuceNSViewClass final : public NSViewComponentPeerWrapperinPerformKeyEquivalent, true }; + const auto ref = owner->safeComponent; if (owner->sendEventToInputContextOrComponent (ev))