@@ -1,5 +1,5 @@ | |||
diff --git a/modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp b/modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp | |||
index 823a1b209..eff47377b 100644 | |||
index dc2ad8e3b..1f03bc047 100644 | |||
--- a/modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp | |||
+++ b/modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp | |||
@@ -184,8 +184,8 @@ void AudioDeviceManager::createAudioDeviceTypes (OwnedArray<AudioIODeviceType>& |
@@ -1,5 +1,5 @@ | |||
diff --git a/modules/juce_audio_basics/midi/juce_MidiMessage.h b/modules/juce_audio_basics/midi/juce_MidiMessage.h | |||
index 5628c3ae9..207bb9a0b 100644 | |||
index 2d9e5adf0..30a609cec 100644 | |||
--- a/modules/juce_audio_basics/midi/juce_MidiMessage.h | |||
+++ b/modules/juce_audio_basics/midi/juce_MidiMessage.h | |||
@@ -945,7 +945,7 @@ private: |
@@ -0,0 +1,58 @@ | |||
diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
index 1543af1ba..c5e96d204 100644 | |||
--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
@@ -61,7 +61,7 @@ JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4996 4100) | |||
#define PRAGMA_ALIGN_SUPPORTED 1 | |||
#endif | |||
-#ifndef _MSC_VER | |||
+#if ! JUCE_WINDOWS | |||
#define __cdecl | |||
#endif | |||
diff --git a/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h b/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h | |||
index 6bea84307..baaa59f06 100644 | |||
--- a/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h | |||
+++ b/modules/juce_audio_plugin_client/utility/juce_CheckSettingMacros.h | |||
@@ -73,11 +73,6 @@ | |||
#define JucePlugin_Build_RTAS 0 | |||
#endif | |||
-#if ! (defined (_MSC_VER) || defined (__APPLE_CPP__) || defined (__APPLE_CC__) || defined (LINUX) || defined (__linux__)) | |||
- #undef JucePlugin_Build_VST3 | |||
- #define JucePlugin_Build_VST3 0 | |||
-#endif | |||
- | |||
//============================================================================== | |||
#if JucePlugin_Build_LV2 && ! defined (JucePlugin_LV2URI) | |||
#error "You need to define the JucePlugin_LV2URI value!" | |||
diff --git a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | |||
index e32d01ed0..c473fb85d 100644 | |||
--- a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | |||
+++ b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | |||
@@ -61,9 +61,6 @@ JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4355) | |||
#ifndef WM_APPCOMMAND | |||
#define WM_APPCOMMAND 0x0319 | |||
#endif | |||
- | |||
- extern "C" void _fpreset(); | |||
- extern "C" void _clearfp(); | |||
#elif ! JUCE_WINDOWS | |||
static void _fpreset() {} | |||
static void _clearfp() {} | |||
diff --git a/modules/juce_core/threads/juce_WaitableEvent.h b/modules/juce_core/threads/juce_WaitableEvent.h | |||
index 52269f706..670903653 100644 | |||
--- a/modules/juce_core/threads/juce_WaitableEvent.h | |||
+++ b/modules/juce_core/threads/juce_WaitableEvent.h | |||
@@ -20,6 +20,10 @@ | |||
============================================================================== | |||
*/ | |||
+#if JUCE_MINGW && !defined(_GLIBCXX_HAS_GTHREADS) | |||
+#include "mingw-std-threads/mingw.condition_variable.h" | |||
+#endif | |||
+ | |||
namespace juce | |||
{ | |||
@@ -0,0 +1,307 @@ | |||
diff --git a/modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h b/modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h | |||
index 656ab3321..c40e854aa 100644 | |||
--- a/modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h | |||
+++ b/modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h | |||
@@ -20,6 +20,11 @@ | |||
============================================================================== | |||
*/ | |||
+#ifndef __clang__ | |||
+// GCC4 compatibility | |||
+namespace std { using ::max_align_t; } | |||
+#endif | |||
+ | |||
namespace juce | |||
{ | |||
diff --git a/modules/juce_audio_basics/native/juce_mac_CoreAudioLayouts.h b/modules/juce_audio_basics/native/juce_mac_CoreAudioLayouts.h | |||
index ac5ce32da..f0cd938ae 100644 | |||
--- a/modules/juce_audio_basics/native/juce_mac_CoreAudioLayouts.h | |||
+++ b/modules/juce_audio_basics/native/juce_mac_CoreAudioLayouts.h | |||
@@ -236,8 +236,10 @@ private: | |||
{ kAudioChannelLayoutTag_AAC_6_0, { centre, left, right, leftSurround, rightSurround, centreSurround } }, | |||
{ kAudioChannelLayoutTag_AAC_6_1, { centre, left, right, leftSurround, rightSurround, centreSurround, LFE } }, | |||
{ kAudioChannelLayoutTag_AAC_7_0, { centre, left, right, leftSurround, rightSurround, leftSurroundRear, rightSurroundRear } }, | |||
+#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 | |||
{ kAudioChannelLayoutTag_AAC_7_1_B, { centre, left, right, leftSurround, rightSurround, leftSurroundRear, rightSurroundRear, LFE } }, | |||
{ kAudioChannelLayoutTag_AAC_7_1_C, { centre, left, right, leftSurround, rightSurround, LFE, topFrontLeft, topFrontRight } }, | |||
+#endif | |||
{ kAudioChannelLayoutTag_AAC_Octagonal, { centre, left, right, leftSurround, rightSurround, leftSurroundRear, rightSurroundRear, centreSurround } }, | |||
{ kAudioChannelLayoutTag_TMH_10_2_std, { left, right, centre, topFrontCentre, leftSurroundSide, rightSurroundSide, leftSurround, rightSurround, topFrontLeft, topFrontRight, wideLeft, wideRight, topRearCentre, centreSurround, LFE, LFE2 } }, | |||
{ kAudioChannelLayoutTag_AC3_1_0_1, { centre, LFE } }, | |||
diff --git a/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm b/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm | |||
index 892312098..411bf2097 100644 | |||
--- a/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm | |||
+++ b/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm | |||
@@ -58,6 +58,10 @@ | |||
namespace juce | |||
{ | |||
+#if MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_8 | |||
+static const uint32 kAudioUnitType_MIDIProcessor = 'aumi'; | |||
+#endif | |||
+ | |||
// Change this to disable logging of various activities | |||
#ifndef AU_LOGGING | |||
#define AU_LOGGING 1 | |||
@@ -274,7 +278,7 @@ namespace AudioUnitFormatHelpers | |||
NSBundle* bundle = [[NSBundle alloc] initWithPath: (NSString*) fileOrIdentifier.toCFString()]; | |||
NSArray* audioComponents = [bundle objectForInfoDictionaryKey: @"AudioComponents"]; | |||
- NSDictionary* dict = audioComponents[0]; | |||
+ NSDictionary* dict = [audioComponents objectAtIndex: 0]; | |||
desc.componentManufacturer = stringToOSType (nsStringToJuce ((NSString*) [dict valueForKey: @"manufacturer"])); | |||
desc.componentType = stringToOSType (nsStringToJuce ((NSString*) [dict valueForKey: @"type"])); | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.h b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
index 02c3de12e..ae60fde15 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
@@ -1184,7 +1184,7 @@ public: | |||
String xMeterID, yMeterID; | |||
}; | |||
- virtual CurveData getResponseCurve (CurveData::Type /*curveType*/) const { return {}; } | |||
+ virtual CurveData getResponseCurve (CurveData::Type /*curveType*/) const { return CurveData(); } | |||
//============================================================================== | |||
/** Not for public use - this is called before deleting an editor component. */ | |||
diff --git a/modules/juce_core/native/juce_osx_ObjCHelpers.h b/modules/juce_core/native/juce_osx_ObjCHelpers.h | |||
index 407d263d0..f2dc28e36 100644 | |||
--- a/modules/juce_core/native/juce_osx_ObjCHelpers.h | |||
+++ b/modules/juce_core/native/juce_osx_ObjCHelpers.h | |||
@@ -71,7 +71,7 @@ inline NSArray* varArrayToNSArray (const var& varToParse); | |||
inline NSDictionary* varObjectToNSDictionary (const var& varToParse) | |||
{ | |||
- auto dictionary = [NSMutableDictionary dictionary]; | |||
+ NSDictionary* dictionary = [NSMutableDictionary dictionary]; | |||
if (varToParse.isObject()) | |||
{ | |||
@@ -118,7 +118,7 @@ inline NSArray* varArrayToNSArray (const var& varToParse) | |||
const auto* varArray = varToParse.getArray(); | |||
- auto array = [NSMutableArray arrayWithCapacity: (NSUInteger) varArray->size()]; | |||
+ NSArray* array = [NSMutableArray arrayWithCapacity: (NSUInteger) varArray->size()]; | |||
for (const auto& aVar : *varArray) | |||
{ | |||
@@ -152,7 +152,8 @@ inline var nsDictionaryToVar (NSDictionary* dictionary) | |||
DynamicObject::Ptr dynamicObject (new DynamicObject()); | |||
for (NSString* key in dictionary) | |||
- dynamicObject->setProperty (nsStringToJuce (key), nsObjectToVar (dictionary[key])); | |||
+ dynamicObject->setProperty (nsStringToJuce (key), | |||
+ nsObjectToVar ([dictionary objectForKey: key])); | |||
return var (dynamicObject.get()); | |||
} | |||
diff --git a/modules/juce_core/system/juce_CompilerSupport.h b/modules/juce_core/system/juce_CompilerSupport.h | |||
index e4d87ab97..ddeef94a5 100644 | |||
--- a/modules/juce_core/system/juce_CompilerSupport.h | |||
+++ b/modules/juce_core/system/juce_CompilerSupport.h | |||
@@ -92,7 +92,7 @@ | |||
//============================================================================== | |||
// C++ library | |||
-#if (defined (__GLIBCXX__) && __GLIBCXX__ < 20130322) || (defined(_LIBCPP_VERSION) && (_LIBCPP_VERSION < 3700)) | |||
+#if (defined (__GLIBCXX__) && __GLIBCXX__ < 20130322) | |||
#error "JUCE requires a C++ library containing std::atomic" | |||
#endif | |||
diff --git a/modules/juce_core/system/juce_PlatformDefs.h b/modules/juce_core/system/juce_PlatformDefs.h | |||
index 52db7c6d6..96ce314d8 100644 | |||
--- a/modules/juce_core/system/juce_PlatformDefs.h | |||
+++ b/modules/juce_core/system/juce_PlatformDefs.h | |||
@@ -99,11 +99,7 @@ namespace juce | |||
deliberately and want to ignore the warning. | |||
*/ | |||
#if JUCE_CLANG | |||
- #if __has_cpp_attribute(clang::fallthrough) | |||
- #define JUCE_FALLTHROUGH [[clang::fallthrough]]; | |||
- #else | |||
- #define JUCE_FALLTHROUGH | |||
- #endif | |||
+ #define JUCE_FALLTHROUGH [[clang::fallthrough]]; | |||
#elif JUCE_GCC | |||
#if __GNUC__ >= 7 | |||
#define JUCE_FALLTHROUGH [[gnu::fallthrough]]; | |||
diff --git a/modules/juce_core/system/juce_TargetPlatform.h b/modules/juce_core/system/juce_TargetPlatform.h | |||
index cf610da9a..9173cc34d 100644 | |||
--- a/modules/juce_core/system/juce_TargetPlatform.h | |||
+++ b/modules/juce_core/system/juce_TargetPlatform.h | |||
@@ -144,8 +144,8 @@ | |||
#endif | |||
#if JUCE_MAC | |||
- #if ! defined (MAC_OS_X_VERSION_10_11) | |||
- #error "The 10.11 SDK (Xcode 7.3.1+) is required to build JUCE apps. You can create apps that run on macOS 10.7+ by changing the deployment target." | |||
+ #if ! defined (MAC_OS_X_VERSION_10_8) | |||
+ #error "The 10.8 SDK is required to build JUCE apps. You can create apps that run on macOS 10.7+ by changing the deployment target." | |||
#elif MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_7 | |||
#error "Building for OSX 10.6 is no longer supported!" | |||
#endif | |||
diff --git a/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm b/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm | |||
index 37bf13094..60467ef61 100644 | |||
--- a/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm | |||
+++ b/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm | |||
@@ -26,6 +26,10 @@ | |||
namespace juce | |||
{ | |||
+#if MAC_OS_X_VERSION_MIN_REQUIRED <= MAC_OS_X_VERSION_10_8 | |||
+ #define __nullable | |||
+#endif | |||
+ | |||
//============================================================================== | |||
// This class has been renamed from CoreGraphicsImage to avoid a symbol | |||
// collision in Pro Tools 2019.12 and possibly 2020 depending on the Pro Tools | |||
diff --git a/modules/juce_graphics/native/juce_mac_Fonts.mm b/modules/juce_graphics/native/juce_mac_Fonts.mm | |||
index b6a918ce1..65b094343 100644 | |||
--- a/modules/juce_graphics/native/juce_mac_Fonts.mm | |||
+++ b/modules/juce_graphics/native/juce_mac_Fonts.mm | |||
@@ -362,20 +362,20 @@ namespace CoreTextTypeLayout | |||
auto verticalJustification = text.getJustification().getOnlyVerticalFlags(); | |||
- auto ctFrameArea = [area, minCTFrameHeight, verticalJustification] | |||
+ const Rectangle<float> ctFrameArea = [area, minCTFrameHeight, verticalJustification] | |||
{ | |||
if (minCTFrameHeight < area.getHeight()) | |||
- return area; | |||
+ return Rectangle<float> (area); | |||
if (verticalJustification == Justification::verticallyCentred) | |||
return area.withSizeKeepingCentre (area.getWidth(), minCTFrameHeight); | |||
- auto frameArea = area.withHeight (minCTFrameHeight); | |||
+ const Rectangle<float> frameArea = area.withHeight (minCTFrameHeight); | |||
if (verticalJustification == Justification::bottom) | |||
return frameArea.withBottomY (area.getBottom()); | |||
- return frameArea; | |||
+ return Rectangle<float> (frameArea); | |||
}(); | |||
auto frame = createCTFrame (framesetter, CGRectMake ((CGFloat) ctFrameArea.getX(), flipHeight - (CGFloat) ctFrameArea.getBottom(), | |||
diff --git a/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm b/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm | |||
index 7adb2a869..48ae2951b 100644 | |||
--- a/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm | |||
+++ b/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm | |||
@@ -1528,17 +1528,21 @@ private: | |||
case NSEventTypeSystemDefined: | |||
case NSEventTypeApplicationDefined: | |||
case NSEventTypePeriodic: | |||
+ #if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 | |||
case NSEventTypeGesture: | |||
+ #endif | |||
case NSEventTypeMagnify: | |||
case NSEventTypeSwipe: | |||
case NSEventTypeRotate: | |||
case NSEventTypeBeginGesture: | |||
case NSEventTypeEndGesture: | |||
case NSEventTypeQuickLook: | |||
- #if JUCE_64BIT | |||
+ #if JUCE_64BIT | |||
case NSEventTypeSmartMagnify: | |||
+ #if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 | |||
case NSEventTypePressure: | |||
#endif | |||
+ #endif | |||
#if defined (MAC_OS_X_VERSION_10_12) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_12 | |||
#if JUCE_64BIT | |||
case NSEventTypeDirectTouch: | |||
diff --git a/modules/juce_gui_basics/native/juce_mac_Windowing.mm b/modules/juce_gui_basics/native/juce_mac_Windowing.mm | |||
index 5ffbe393c..ddb5aedc5 100644 | |||
--- a/modules/juce_gui_basics/native/juce_mac_Windowing.mm | |||
+++ b/modules/juce_gui_basics/native/juce_mac_Windowing.mm | |||
@@ -309,7 +309,7 @@ bool DragAndDropContainer::performExternalDragDropOfFiles (const StringArray& fi | |||
for (auto& filename : files) | |||
{ | |||
auto* nsFilename = juceStringToNS (filename); | |||
- auto fileURL = [NSURL fileURLWithPath: nsFilename]; | |||
+ NSURL* fileURL = [NSURL fileURLWithPath: nsFilename]; | |||
auto dragItem = [[NSDraggingItem alloc] initWithPasteboardWriter: fileURL]; | |||
auto eventPos = [event locationInWindow]; | |||
diff --git a/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp b/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp | |||
index cf8df3b72..6f8417340 100644 | |||
--- a/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp | |||
+++ b/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp | |||
@@ -3054,7 +3054,7 @@ void XWindowSystem::handleButtonPressEvent (LinuxComponentPeer<::Window>* peer, | |||
peer->toFront (true); | |||
peer->handleMouseEvent (MouseInputSource::InputSourceType::mouse, getLogicalMousePos (buttonPressEvent, peer->getPlatformScaleFactor()), | |||
ModifierKeys::currentModifiers, MouseInputSource::invalidPressure, | |||
- MouseInputSource::invalidOrientation, getEventTime (buttonPressEvent), {}); | |||
+ MouseInputSource::invalidOrientation, getEventTime (buttonPressEvent)); | |||
} | |||
void XWindowSystem::handleButtonPressEvent (LinuxComponentPeer<::Window>* peer, const XButtonPressedEvent& buttonPressEvent) const | |||
diff --git a/modules/juce_gui_basics/windows/juce_ComponentPeer.h b/modules/juce_gui_basics/windows/juce_ComponentPeer.h | |||
index 3dacc095a..820987e94 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_ComponentPeer.h | |||
+++ b/modules/juce_gui_basics/windows/juce_ComponentPeer.h | |||
@@ -314,7 +314,7 @@ public: | |||
//============================================================================== | |||
void handleMouseEvent (MouseInputSource::InputSourceType type, Point<float> positionWithinPeer, ModifierKeys newMods, float pressure, | |||
- float orientation, int64 time, PenDetails pen = {}, int touchIndex = 0); | |||
+ float orientation, int64 time, PenDetails pen = PenDetails(), int touchIndex = 0); | |||
void handleMouseWheel (MouseInputSource::InputSourceType type, Point<float> positionWithinPeer, | |||
int64 time, const MouseWheelDetails&, int touchIndex = 0); | |||
diff --git a/modules/juce_gui_extra/juce_gui_extra.cpp b/modules/juce_gui_extra/juce_gui_extra.cpp | |||
index d4ebed7fd..df48cceaf 100644 | |||
--- a/modules/juce_gui_extra/juce_gui_extra.cpp | |||
+++ b/modules/juce_gui_extra/juce_gui_extra.cpp | |||
@@ -142,7 +142,9 @@ | |||
#include "misc/juce_PushNotifications.cpp" | |||
#include "misc/juce_RecentlyOpenedFilesList.cpp" | |||
#include "misc/juce_SplashScreen.cpp" | |||
+#if !JUCE_MAC || MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 | |||
#include "misc/juce_SystemTrayIconComponent.cpp" | |||
+#endif | |||
#include "misc/juce_LiveConstantEditor.cpp" | |||
#include "misc/juce_AnimatedAppComponent.cpp" | |||
@@ -154,7 +156,9 @@ | |||
#if JUCE_MAC | |||
#include "native/juce_mac_NSViewComponent.mm" | |||
#include "native/juce_mac_AppleRemote.mm" | |||
- #include "native/juce_mac_SystemTrayIcon.cpp" | |||
+ #if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 | |||
+ #include "native/juce_mac_SystemTrayIcon.cpp" | |||
+ #endif | |||
#endif | |||
#if JUCE_IOS | |||
diff --git a/modules/juce_gui_extra/juce_gui_extra.h b/modules/juce_gui_extra/juce_gui_extra.h | |||
index 822c1885e..77e78c87a 100644 | |||
--- a/modules/juce_gui_extra/juce_gui_extra.h | |||
+++ b/modules/juce_gui_extra/juce_gui_extra.h | |||
@@ -115,7 +115,9 @@ | |||
#include "misc/juce_PushNotifications.h" | |||
#include "misc/juce_RecentlyOpenedFilesList.h" | |||
#include "misc/juce_SplashScreen.h" | |||
+#if !JUCE_MAC || MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_8 | |||
#include "misc/juce_SystemTrayIconComponent.h" | |||
+#endif | |||
#include "misc/juce_WebBrowserComponent.h" | |||
#include "misc/juce_LiveConstantEditor.h" | |||
#include "misc/juce_AnimatedAppComponent.h" | |||
diff --git a/modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp b/modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp | |||
index 9786c0875..34695b5e1 100644 | |||
--- a/modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp | |||
+++ b/modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp | |||
@@ -157,7 +157,7 @@ void RecentlyOpenedFilesList::forgetRecentFileNatively (const File& file) | |||
// from the recent list, so we clear them all and add them back excluding | |||
// the specified file | |||
- auto sharedDocController = [NSDocumentController sharedDocumentController]; | |||
+ NSDocumentController* sharedDocController = [NSDocumentController sharedDocumentController]; | |||
auto recentDocumentURLs = [sharedDocController recentDocumentURLs]; | |||
[sharedDocController clearRecentDocuments: nil]; |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp b/modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp | |||
index d65642de6..050941c6c 100644 | |||
index 19f1d7ac7..8ffe16b06 100644 | |||
--- a/modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp | |||
+++ b/modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp | |||
@@ -18,7 +18,7 @@ | |||
@@ -25,7 +25,7 @@ | |||
#if JUCE_PLUGINHOST_LADSPA && JUCE_LINUX | |||
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp b/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp | |||
index b9df89ed9..1f40e3eaa 100644 | |||
index 6a84b4eaf..670cb3969 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp | |||
@@ -33,8 +33,6 @@ AudioProcessorEditor::AudioProcessorEditor (AudioProcessor* p) noexcept : proce | |||
@@ -40,8 +40,6 @@ AudioProcessorEditor::AudioProcessorEditor (AudioProcessor* p) noexcept : proce | |||
AudioProcessorEditor::~AudioProcessorEditor() | |||
{ | |||
@@ -11,7 +11,7 @@ index b9df89ed9..1f40e3eaa 100644 | |||
// if this fails, then the wrapper hasn't called editorBeingDeleted() on the | |||
// filter for some reason.. | |||
jassert (processor.getActiveEditor() != this); | |||
@@ -49,23 +47,6 @@ void AudioProcessorEditor::hostMIDIControllerIsAvailable (bool) { | |||
@@ -56,23 +54,6 @@ void AudioProcessorEditor::hostMIDIControllerIsAvailable (bool) { | |||
void AudioProcessorEditor::initialise() | |||
{ | |||
@@ -36,10 +36,10 @@ index b9df89ed9..1f40e3eaa 100644 | |||
attachConstrainer (&defaultConstrainer); | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h b/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h | |||
index 847707ea8..c33cbe73d 100644 | |||
index ff694b78f..07d3765f4 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h | |||
@@ -199,7 +199,6 @@ private: | |||
@@ -206,7 +206,6 @@ private: | |||
bool resizable; | |||
ComponentBoundsConstrainer defaultConstrainer; | |||
ComponentBoundsConstrainer* constrainer = {}; | |||
@@ -48,10 +48,10 @@ index 847707ea8..c33cbe73d 100644 | |||
JUCE_DECLARE_NON_COPYABLE (AudioProcessorEditor) | |||
diff --git a/modules/juce_gui_basics/juce_gui_basics.cpp b/modules/juce_gui_basics/juce_gui_basics.cpp | |||
index 7c6273a54..ca0c5e227 100644 | |||
index 056ff591b..a4d798606 100644 | |||
--- a/modules/juce_gui_basics/juce_gui_basics.cpp | |||
+++ b/modules/juce_gui_basics/juce_gui_basics.cpp | |||
@@ -211,7 +211,6 @@ namespace juce | |||
@@ -218,7 +218,6 @@ namespace juce | |||
#include "application/juce_Application.cpp" | |||
#include "misc/juce_BubbleComponent.cpp" | |||
#include "misc/juce_DropShadower.cpp" | |||
@@ -60,10 +60,10 @@ index 7c6273a54..ca0c5e227 100644 | |||
#include "layout/juce_FlexBox.cpp" | |||
#include "layout/juce_GridItem.cpp" | |||
diff --git a/modules/juce_gui_basics/juce_gui_basics.h b/modules/juce_gui_basics/juce_gui_basics.h | |||
index 8085c6eae..038f679fd 100644 | |||
index fc4acbd6b..d20a707a3 100644 | |||
--- a/modules/juce_gui_basics/juce_gui_basics.h | |||
+++ b/modules/juce_gui_basics/juce_gui_basics.h | |||
@@ -243,7 +243,6 @@ namespace juce | |||
@@ -250,7 +250,6 @@ namespace juce | |||
#include "menus/juce_BurgerMenuComponent.h" | |||
#include "buttons/juce_ToolbarButton.h" | |||
#include "misc/juce_DropShadower.h" | |||
@@ -71,3 +71,57 @@ index 8085c6eae..038f679fd 100644 | |||
#include "widgets/juce_TreeView.h" | |||
#include "windows/juce_TopLevelWindow.h" | |||
#include "windows/juce_AlertWindow.h" | |||
diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp b/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp | |||
index e78d4d330..d1d20d6c7 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp | |||
+++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp | |||
@@ -41,8 +41,6 @@ ResizableWindow::ResizableWindow (const String& name, Colour bkgnd, bool shouldA | |||
ResizableWindow::~ResizableWindow() | |||
{ | |||
- splashScreen.deleteAndZero(); | |||
- | |||
// Don't delete or remove the resizer components yourself! They're managed by the | |||
// ResizableWindow, and you should leave them alone! You may have deleted them | |||
// accidentally by careless use of deleteAllChildren()..? | |||
@@ -60,27 +58,6 @@ ResizableWindow::~ResizableWindow() | |||
void ResizableWindow::initialise (const bool shouldAddToDesktop) | |||
{ | |||
- /* | |||
- ========================================================================== | |||
- | |||
- In accordance with the terms of the JUCE 5 End-Use License Agreement, the | |||
- JUCE Code in SECTION A cannot be removed, changed or otherwise rendered | |||
- ineffective unless you have a JUCE Indie or Pro license, or are using | |||
- JUCE under the GPL v3 license. | |||
- | |||
- End User License Agreement: www.juce.com/juce-5-licence | |||
- | |||
- ========================================================================== | |||
- */ | |||
- | |||
- // BEGIN SECTION A | |||
- | |||
- #if ! JucePlugin_Build_Standalone | |||
- splashScreen = new JUCESplashScreen (*this); | |||
- #endif | |||
- | |||
- // END SECTION A | |||
- | |||
defaultConstrainer.setMinimumOnscreenAmounts (0x10000, 16, 24, 16); | |||
lastNonFullScreenPos.setBounds (50, 50, 256, 256); | |||
diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.h b/modules/juce_gui_basics/windows/juce_ResizableWindow.h | |||
index d67303595..e59f620c1 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_ResizableWindow.h | |||
+++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.h | |||
@@ -383,7 +383,7 @@ protected: | |||
private: | |||
//============================================================================== | |||
- Component::SafePointer<Component> contentComponent, splashScreen; | |||
+ Component::SafePointer<Component> contentComponent; | |||
bool ownsContentComponent = false, resizeToFitContent = false, fullscreen = false, canDrag = true, dragStarted = false; | |||
ComponentDragger dragger; | |||
Rectangle<int> lastNonFullScreenPos; |
@@ -1,5 +1,5 @@ | |||
diff --git a/modules/juce_core/native/juce_posix_SharedCode.h b/modules/juce_core/native/juce_posix_SharedCode.h | |||
index 1fc1f00b7..2b0e16844 100644 | |||
index 982db865b..cfdd2d1cd 100644 | |||
--- a/modules/juce_core/native/juce_posix_SharedCode.h | |||
+++ b/modules/juce_core/native/juce_posix_SharedCode.h | |||
@@ -590,12 +590,39 @@ File juce_getExecutableFile() |
@@ -1,5 +1,5 @@ | |||
diff --git a/modules/juce_core/native/juce_linux_Files.cpp b/modules/juce_core/native/juce_linux_Files.cpp | |||
index e794447c3..4f8918375 100644 | |||
index d2a302e3e..3dc4602ce 100644 | |||
--- a/modules/juce_core/native/juce_linux_Files.cpp | |||
+++ b/modules/juce_core/native/juce_linux_Files.cpp | |||
@@ -211,15 +211,21 @@ bool Process::openDocument (const String& fileName, const String& parameters) | |||
@@ -28,7 +28,7 @@ index e794447c3..4f8918375 100644 | |||
return cpid >= 0; | |||
diff --git a/modules/juce_core/native/juce_mac_Files.mm b/modules/juce_core/native/juce_mac_Files.mm | |||
index 73ed29f4e..d6c4fcf3e 100644 | |||
index d26443079..616677e1f 100644 | |||
--- a/modules/juce_core/native/juce_mac_Files.mm | |||
+++ b/modules/juce_core/native/juce_mac_Files.mm | |||
@@ -92,23 +92,22 @@ namespace MacFileHelpers | |||
@@ -65,10 +65,10 @@ index 73ed29f4e..d6c4fcf3e 100644 | |||
#endif | |||
} | |||
diff --git a/modules/juce_core/native/juce_posix_SharedCode.h b/modules/juce_core/native/juce_posix_SharedCode.h | |||
index 2b0e16844..fc04da66a 100644 | |||
index cfdd2d1cd..332a64959 100644 | |||
--- a/modules/juce_core/native/juce_posix_SharedCode.h | |||
+++ b/modules/juce_core/native/juce_posix_SharedCode.h | |||
@@ -1090,7 +1090,18 @@ public: | |||
@@ -1092,7 +1092,18 @@ public: | |||
if (pipe (pipeHandles) == 0) | |||
{ | |||
@@ -88,7 +88,7 @@ index 2b0e16844..fc04da66a 100644 | |||
if (result < 0) | |||
{ | |||
@@ -1099,6 +1110,7 @@ public: | |||
@@ -1101,6 +1112,7 @@ public: | |||
} | |||
else if (result == 0) | |||
{ | |||
@@ -96,7 +96,7 @@ index 2b0e16844..fc04da66a 100644 | |||
// we're the child process.. | |||
close (pipeHandles[0]); // close the read handle | |||
@@ -1113,17 +1125,10 @@ public: | |||
@@ -1115,17 +1127,10 @@ public: | |||
dup2 (open ("/dev/null", O_WRONLY), STDERR_FILENO); | |||
close (pipeHandles[1]); |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_core/native/juce_posix_SharedCode.h b/modules/juce_core/native/juce_posix_SharedCode.h | |||
index ea007b1..f6faa5b 100644 | |||
--- a/modules/juce_core/native/juce_posix_SharedCode.h | |||
+++ b/modules/juce_core/native/juce_posix_SharedCode.h | |||
@@ -1234,6 +1234,11 @@ public: | |||
diff --git a/modules/juce_core/native/juce_posix_SharedCode.h b/modules/juce_core/native/juce_posix_SharedCode.h | |||
index 332a64959..c6d95a93a 100644 | |||
--- a/modules/juce_core/native/juce_posix_SharedCode.h | |||
+++ b/modules/juce_core/native/juce_posix_SharedCode.h | |||
@@ -1227,6 +1227,11 @@ public: | |||
return 0; | |||
} | |||
@@ -14,11 +14,11 @@ index ea007b1..f6faa5b 100644 | |||
int childPID = 0; | |||
int pipeHandle = 0; | |||
int exitCode = -1; | |||
diff --git a/modules/juce_core/native/juce_win32_Threads.cpp b/modules/juce_core/native/juce_win32_Threads.cpp | |||
index 68d891f..d38b733 100644 | |||
--- a/modules/juce_core/native/juce_win32_Threads.cpp | |||
+++ b/modules/juce_core/native/juce_win32_Threads.cpp | |||
@@ -488,6 +488,11 @@ public: | |||
diff --git a/modules/juce_core/native/juce_win32_Threads.cpp b/modules/juce_core/native/juce_win32_Threads.cpp | |||
index dbe0c6b5d..098416bd9 100644 | |||
--- a/modules/juce_core/native/juce_win32_Threads.cpp | |||
+++ b/modules/juce_core/native/juce_win32_Threads.cpp | |||
@@ -477,6 +477,11 @@ public: | |||
return (uint32) exitCode; | |||
} | |||
@@ -30,27 +30,27 @@ index 68d891f..d38b733 100644 | |||
bool ok; | |||
private: | |||
diff --git a/modules/juce_core/threads/juce_ChildProcess.cpp b/modules/juce_core/threads/juce_ChildProcess.cpp | |||
index 5648c5d..262882b 100644 | |||
--- a/modules/juce_core/threads/juce_ChildProcess.cpp | |||
+++ b/modules/juce_core/threads/juce_ChildProcess.cpp | |||
@@ -75,6 +75,11 @@ String ChildProcess::readAllProcessOutput() | |||
return result.toString(); | |||
diff --git a/modules/juce_core/threads/juce_ChildProcess.cpp b/modules/juce_core/threads/juce_ChildProcess.cpp | |||
index 3b284c25a..31e9c8d94 100644 | |||
--- a/modules/juce_core/threads/juce_ChildProcess.cpp | |||
+++ b/modules/juce_core/threads/juce_ChildProcess.cpp | |||
@@ -81,6 +81,11 @@ String ChildProcess::readAllProcessOutput() | |||
} | |||
+uint32 ChildProcess::getPID() const noexcept | |||
+{ | |||
+ return activeProcess != nullptr ? activeProcess->getPID() : 0; | |||
+} | |||
+ | |||
//============================================================================== | |||
//============================================================================== | |||
#if JUCE_UNIT_TESTS | |||
diff --git a/modules/juce_core/threads/juce_ChildProcess.h b/modules/juce_core/threads/juce_ChildProcess.h | |||
index b2bd0e1..cbc380d 100644 | |||
--- a/modules/juce_core/threads/juce_ChildProcess.h | |||
+++ b/modules/juce_core/threads/juce_ChildProcess.h | |||
@@ -99,6 +99,8 @@ public: | |||
diff --git a/modules/juce_core/threads/juce_ChildProcess.h b/modules/juce_core/threads/juce_ChildProcess.h | |||
index 47a26281b..74dbb11ab 100644 | |||
--- a/modules/juce_core/threads/juce_ChildProcess.h | |||
+++ b/modules/juce_core/threads/juce_ChildProcess.h | |||
@@ -101,6 +101,8 @@ public: | |||
*/ | |||
bool kill(); | |||
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_gui_basics/native/juce_linux_FileChooser.cpp b/modules/juce_gui_basics/native/juce_linux_FileChooser.cpp | |||
index 62a1e8454..778168fc7 100644 | |||
index 780716a80..2e2d51b76 100644 | |||
--- a/modules/juce_gui_basics/native/juce_linux_FileChooser.cpp | |||
+++ b/modules/juce_gui_basics/native/juce_linux_FileChooser.cpp | |||
@@ -19,6 +19,7 @@ | |||
@@ -26,6 +26,7 @@ | |||
namespace juce | |||
{ | |||
@@ -10,7 +10,7 @@ index 62a1e8454..778168fc7 100644 | |||
static bool exeIsAvailable (const char* const executable) | |||
{ | |||
ChildProcess child; | |||
@@ -233,10 +234,11 @@ private: | |||
@@ -240,10 +241,11 @@ private: | |||
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Native) | |||
}; | |||
@@ -23,7 +23,7 @@ index 62a1e8454..778168fc7 100644 | |||
return false; | |||
#else | |||
static bool canUseNativeBox = exeIsAvailable ("zenity") || exeIsAvailable ("kdialog"); | |||
@@ -246,7 +248,11 @@ bool FileChooser::isPlatformDialogAvailable() | |||
@@ -253,7 +255,11 @@ bool FileChooser::isPlatformDialogAvailable() | |||
FileChooser::Pimpl* FileChooser::showPlatformDialog (FileChooser& owner, int flags, FilePreviewComponent*) | |||
{ |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_gui_basics/windows/juce_DialogWindow.cpp b/modules/juce_gui_basics/windows/juce_DialogWindow.cpp | |||
index 2b2345cdb..30c611fa7 100644 | |||
index ea2675d59..92bf09e16 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_DialogWindow.cpp | |||
+++ b/modules/juce_gui_basics/windows/juce_DialogWindow.cpp | |||
@@ -124,7 +124,8 @@ void DialogWindow::showDialog (const String& dialogTitle, | |||
@@ -131,7 +131,8 @@ void DialogWindow::showDialog (const String& dialogTitle, | |||
Colour backgroundColour, | |||
const bool escapeKeyTriggersCloseButton, | |||
const bool resizable, | |||
@@ -12,7 +12,7 @@ index 2b2345cdb..30c611fa7 100644 | |||
{ | |||
LaunchOptions o; | |||
o.dialogTitle = dialogTitle; | |||
@@ -132,9 +133,9 @@ void DialogWindow::showDialog (const String& dialogTitle, | |||
@@ -139,9 +140,9 @@ void DialogWindow::showDialog (const String& dialogTitle, | |||
o.componentToCentreAround = componentToCentreAround; | |||
o.dialogBackgroundColour = backgroundColour; | |||
o.escapeKeyTriggersCloseButton = escapeKeyTriggersCloseButton; | |||
@@ -23,7 +23,7 @@ index 2b2345cdb..30c611fa7 100644 | |||
o.launchAsync(); | |||
} | |||
@@ -146,7 +147,8 @@ int DialogWindow::showModalDialog (const String& dialogTitle, | |||
@@ -153,7 +154,8 @@ int DialogWindow::showModalDialog (const String& dialogTitle, | |||
Colour backgroundColour, | |||
const bool escapeKeyTriggersCloseButton, | |||
const bool resizable, | |||
@@ -33,7 +33,7 @@ index 2b2345cdb..30c611fa7 100644 | |||
{ | |||
LaunchOptions o; | |||
o.dialogTitle = dialogTitle; | |||
@@ -154,9 +156,9 @@ int DialogWindow::showModalDialog (const String& dialogTitle, | |||
@@ -161,9 +163,9 @@ int DialogWindow::showModalDialog (const String& dialogTitle, | |||
o.componentToCentreAround = componentToCentreAround; | |||
o.dialogBackgroundColour = backgroundColour; | |||
o.escapeKeyTriggersCloseButton = escapeKeyTriggersCloseButton; | |||
@@ -45,10 +45,10 @@ index 2b2345cdb..30c611fa7 100644 | |||
return o.runModal(); | |||
} | |||
diff --git a/modules/juce_gui_basics/windows/juce_DialogWindow.h b/modules/juce_gui_basics/windows/juce_DialogWindow.h | |||
index 231168d0c..8c9f32957 100644 | |||
index a10211525..de9ef2f4b 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_DialogWindow.h | |||
+++ b/modules/juce_gui_basics/windows/juce_DialogWindow.h | |||
@@ -186,7 +186,8 @@ public: | |||
@@ -193,7 +193,8 @@ public: | |||
Colour backgroundColour, | |||
bool escapeKeyTriggersCloseButton, | |||
bool shouldBeResizable = false, | |||
@@ -58,7 +58,7 @@ index 231168d0c..8c9f32957 100644 | |||
#if JUCE_MODAL_LOOPS_PERMITTED || DOXYGEN | |||
/** Easy way of quickly showing a dialog box containing a given component. | |||
@@ -232,7 +233,8 @@ public: | |||
@@ -239,7 +240,8 @@ public: | |||
Colour backgroundColour, | |||
bool escapeKeyTriggersCloseButton, | |||
bool shouldBeResizable = false, |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp b/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp | |||
index 6d23372d9..32e159cf6 100644 | |||
index 6f8417340..5e8603833 100644 | |||
--- a/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp | |||
+++ b/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp | |||
@@ -2542,8 +2542,9 @@ void XWindowSystem::setWindowType (::Window windowH, int styleFlags) const | |||
@@ -2561,8 +2561,9 @@ void XWindowSystem::setWindowType (::Window windowH, int styleFlags) const | |||
Atom netHints [2]; | |||
@@ -1,5 +1,5 @@ | |||
diff --git a/modules/juce_core/native/juce_posix_SharedCode.h b/modules/juce_core/native/juce_posix_SharedCode.h | |||
index fc04da66a..b83efeac8 100644 | |||
index c6d95a93a..9c9053ac4 100644 | |||
--- a/modules/juce_core/native/juce_posix_SharedCode.h | |||
+++ b/modules/juce_core/native/juce_posix_SharedCode.h | |||
@@ -977,7 +977,11 @@ bool Thread::setThreadPriority (void* handle, int priority) |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.h b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
index 5e538d5e1..626c5d182 100644 | |||
index ae60fde15..dbad562ef 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
@@ -1109,6 +1109,11 @@ public: | |||
@@ -1116,6 +1116,11 @@ public: | |||
/** This method is called when the layout of the audio processor changes. */ | |||
virtual void processorLayoutsChanged(); | |||
@@ -14,3 +14,11 @@ index 5e538d5e1..626c5d182 100644 | |||
//============================================================================== | |||
/** Adds a listener that will be called when an aspect of this processor changes. */ | |||
virtual void addListener (AudioProcessorListener* newListener); | |||
@@ -1200,6 +1205,7 @@ public: | |||
wrapperType_AudioUnitv3, | |||
wrapperType_RTAS, | |||
wrapperType_AAX, | |||
+ wrapperType_LV2, | |||
wrapperType_Standalone, | |||
wrapperType_Unity | |||
}; |
@@ -0,0 +1,14 @@ | |||
diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
index c5e96d204..7e2122580 100644 | |||
--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
@@ -301,9 +301,6 @@ public: | |||
// You must at least have some channels | |||
jassert (processor->isMidiEffect() || (maxNumInChannels > 0 || maxNumOutChannels > 0)); | |||
- if (processor->isMidiEffect()) | |||
- maxNumInChannels = maxNumOutChannels = 2; | |||
- | |||
#ifdef JucePlugin_PreferredChannelConfigurations | |||
processor->setPlayConfigDetails (maxNumInChannels, maxNumOutChannels, 44100.0, 1024); | |||
#endif |
@@ -0,0 +1,13 @@ | |||
diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
index 7e2122580..cff9b7a88 100644 | |||
--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
@@ -1841,7 +1841,7 @@ private: | |||
pointer_sized_int handleGetPlugInName (VstOpCodeArguments args) | |||
{ | |||
- String (JucePlugin_Name).copyToUTF8 ((char*) args.ptr, 64 + 1); | |||
+ String (processor->getName()).copyToUTF8 ((char*) args.ptr, 64 + 1); | |||
return 1; | |||
} | |||
@@ -1,13 +1,15 @@ | |||
diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
index e3d277de2..e9a5c6cb1 100644 | |||
index cff9b7a88..3ae14372c 100644 | |||
--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
@@ -206,6 +206,8 @@ struct SharedMessageThread : public Thread | |||
@@ -209,9 +209,9 @@ struct SharedMessageThread : public Thread | |||
void run() override | |||
{ | |||
initialiseJuce_GUI(); | |||
- initialised = true; | |||
MessageManager::getInstance()->setCurrentThreadAsMessageThread(); | |||
initialised = true; | |||
+ initialised = true; | |||
XWindowSystem::getInstance(); | |||
+ XWindowSystem::getInstance(); | |||
+ | |||
while ((! threadShouldExit()) && MessageManager::getInstance()->runDispatchLoopUntil (250)) | |||
{} | |||
} |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_events/messages/juce_MessageManager.h b/modules/juce_events/messages/juce_MessageManager.h | |||
index 22b2d1895..e94d0ce5a 100644 | |||
index ae7231101..fff5b9794 100644 | |||
--- a/modules/juce_events/messages/juce_MessageManager.h | |||
+++ b/modules/juce_events/messages/juce_MessageManager.h | |||
@@ -316,6 +316,7 @@ public: | |||
@@ -311,6 +311,7 @@ public: | |||
// Internal methods - do not use! | |||
void deliverBroadcastMessage (const String&); | |||
~MessageManager() noexcept; | |||
@@ -10,7 +10,7 @@ index 22b2d1895..e94d0ce5a 100644 | |||
#endif | |||
private: | |||
@@ -338,7 +339,6 @@ private: | |||
@@ -333,7 +334,6 @@ private: | |||
static void* exitModalLoopCallback (void*); | |||
static void doPlatformSpecificInitialisation(); | |||
static void doPlatformSpecificShutdown(); |
@@ -1,8 +1,8 @@ | |||
diff --git a/modules/juce_audio_processors/juce_audio_processors.cpp b/modules/juce_audio_processors/juce_audio_processors.cpp | |||
index c468c944c..133d1ad45 100644 | |||
index ac194a19d..f494ec3a2 100644 | |||
--- a/modules/juce_audio_processors/juce_audio_processors.cpp | |||
+++ b/modules/juce_audio_processors/juce_audio_processors.cpp | |||
@@ -40,7 +40,7 @@ | |||
@@ -47,7 +47,7 @@ | |||
#endif | |||
#endif | |||
@@ -11,7 +11,7 @@ index c468c944c..133d1ad45 100644 | |||
#include <X11/Xlib.h> | |||
#include <X11/Xutil.h> | |||
#include <sys/utsname.h> | |||
@@ -130,9 +130,11 @@ JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wdeprecated-declarations", "-Wcast-align" | |||
@@ -141,9 +141,11 @@ JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wdeprecated-declarations", "-Wcast-align" | |||
#include "format_types/juce_LegacyAudioParameter.cpp" | |||
#include "processors/juce_AudioProcessor.cpp" | |||
#include "processors/juce_AudioPluginInstance.cpp" | |||
@@ -26,10 +26,10 @@ index c468c944c..133d1ad45 100644 | |||
#include "format_types/juce_LADSPAPluginFormat.cpp" | |||
#include "format_types/juce_VSTPluginFormat.cpp" | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp b/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp | |||
index d8efe0707..7c83196e9 100644 | |||
index caa55b618..41c547b0c 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp | |||
@@ -44,12 +44,14 @@ AudioProcessor::AudioProcessor (const BusesProperties& ioConfig) | |||
@@ -51,12 +51,14 @@ AudioProcessor::AudioProcessor (const BusesProperties& ioConfig) | |||
AudioProcessor::~AudioProcessor() | |||
{ | |||
@@ -44,7 +44,7 @@ index d8efe0707..7c83196e9 100644 | |||
#if JUCE_DEBUG && ! JUCE_DISABLE_AUDIOPROCESSOR_BEGIN_END_GESTURE_CHECKING | |||
// This will fail if you've called beginParameterChangeGesture() for one | |||
@@ -797,6 +799,7 @@ void AudioProcessor::audioIOChanged (bool busNumberChanged, bool channelNumChang | |||
@@ -804,6 +806,7 @@ void AudioProcessor::audioIOChanged (bool busNumberChanged, bool channelNumChang | |||
processorLayoutsChanged(); | |||
} | |||
@@ -52,7 +52,7 @@ index d8efe0707..7c83196e9 100644 | |||
//============================================================================== | |||
void AudioProcessor::editorBeingDeleted (AudioProcessorEditor* const editor) noexcept | |||
{ | |||
@@ -833,6 +836,7 @@ AudioProcessorEditor* AudioProcessor::createEditorIfNeeded() | |||
@@ -840,6 +843,7 @@ AudioProcessorEditor* AudioProcessor::createEditorIfNeeded() | |||
return ed; | |||
} | |||
@@ -61,10 +61,10 @@ index d8efe0707..7c83196e9 100644 | |||
//============================================================================== | |||
void AudioProcessor::getCurrentProgramStateInformation (juce::MemoryBlock& destData) | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.h b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
index 8d3cd062e..34a192dc5 100644 | |||
index dbad562ef..ab9e8a7d6 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
@@ -919,6 +919,7 @@ public: | |||
@@ -926,6 +926,7 @@ public: | |||
*/ | |||
virtual void setNonRealtime (bool isNonRealtime) noexcept; | |||
@@ -72,7 +72,7 @@ index 8d3cd062e..34a192dc5 100644 | |||
//============================================================================== | |||
/** Creates the processor's GUI. | |||
@@ -968,6 +969,7 @@ public: | |||
@@ -975,6 +976,7 @@ public: | |||
This may call createEditor() internally to create the component. | |||
*/ | |||
AudioProcessorEditor* createEditorIfNeeded(); | |||
@@ -80,9 +80,9 @@ index 8d3cd062e..34a192dc5 100644 | |||
//============================================================================== | |||
/** Returns the default number of steps for a parameter. | |||
@@ -1184,9 +1186,11 @@ public: | |||
@@ -1191,9 +1193,11 @@ public: | |||
virtual CurveData getResponseCurve (CurveData::Type /*curveType*/) const { return {}; } | |||
virtual CurveData getResponseCurve (CurveData::Type /*curveType*/) const { return CurveData(); } | |||
+ #if ! JUCE_AUDIOPROCESSOR_NO_GUI | |||
//============================================================================== | |||
@@ -92,7 +92,7 @@ index 8d3cd062e..34a192dc5 100644 | |||
/** Flags to indicate the type of plugin context in which a processor is being used. */ | |||
enum WrapperType | |||
@@ -1461,7 +1465,9 @@ private: | |||
@@ -1468,7 +1472,9 @@ private: | |||
//============================================================================== | |||
Array<AudioProcessorListener*> listeners; | |||
@@ -103,10 +103,10 @@ index 8d3cd062e..34a192dc5 100644 | |||
int blockSize = 0, latencySamples = 0; | |||
bool suspended = false; | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp | |||
index 7d2ac0047..dcdaea84d 100644 | |||
index fd8c35879..070f82554 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp | |||
@@ -1490,8 +1490,10 @@ bool AudioProcessorGraph::AudioGraphIOProcessor::producesMidi() const | |||
@@ -1496,8 +1496,10 @@ bool AudioProcessorGraph::AudioGraphIOProcessor::producesMidi() const | |||
bool AudioProcessorGraph::AudioGraphIOProcessor::isInput() const noexcept { return type == audioInputNode || type == midiInputNode; } | |||
bool AudioProcessorGraph::AudioGraphIOProcessor::isOutput() const noexcept { return type == audioOutputNode || type == midiOutputNode; } | |||
@@ -118,10 +118,10 @@ index 7d2ac0047..dcdaea84d 100644 | |||
int AudioProcessorGraph::AudioGraphIOProcessor::getNumPrograms() { return 0; } | |||
int AudioProcessorGraph::AudioGraphIOProcessor::getCurrentProgram() { return 0; } | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h | |||
index 93b2d75a4..23d1670d4 100644 | |||
index a16e35df0..8d2221f1e 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h | |||
@@ -348,8 +348,10 @@ public: | |||
@@ -355,8 +355,10 @@ public: | |||
bool acceptsMidi() const override; | |||
bool producesMidi() const override; | |||
@@ -132,7 +132,7 @@ index 93b2d75a4..23d1670d4 100644 | |||
int getNumPrograms() override; | |||
int getCurrentProgram() override; | |||
@@ -385,8 +387,10 @@ public: | |||
@@ -392,8 +394,10 @@ public: | |||
bool acceptsMidi() const override; | |||
bool producesMidi() const override; | |||
@@ -1,12 +0,0 @@ | |||
diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.h b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
index 626c5d182..8d3cd062e 100644 | |||
--- a/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
+++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.h | |||
@@ -1198,6 +1198,7 @@ public: | |||
wrapperType_AudioUnitv3, | |||
wrapperType_RTAS, | |||
wrapperType_AAX, | |||
+ wrapperType_LV2, | |||
wrapperType_Standalone, | |||
wrapperType_Unity | |||
}; |
@@ -1,54 +0,0 @@ | |||
diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp b/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp | |||
index 712e93f43..d4d8b7c14 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp | |||
+++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp | |||
@@ -34,8 +34,6 @@ ResizableWindow::ResizableWindow (const String& name, Colour bkgnd, bool shouldA | |||
ResizableWindow::~ResizableWindow() | |||
{ | |||
- splashScreen.deleteAndZero(); | |||
- | |||
// Don't delete or remove the resizer components yourself! They're managed by the | |||
// ResizableWindow, and you should leave them alone! You may have deleted them | |||
// accidentally by careless use of deleteAllChildren()..? | |||
@@ -53,27 +51,6 @@ ResizableWindow::~ResizableWindow() | |||
void ResizableWindow::initialise (const bool shouldAddToDesktop) | |||
{ | |||
- /* | |||
- ========================================================================== | |||
- | |||
- In accordance with the terms of the JUCE 5 End-Use License Agreement, the | |||
- JUCE Code in SECTION A cannot be removed, changed or otherwise rendered | |||
- ineffective unless you have a JUCE Indie or Pro license, or are using | |||
- JUCE under the GPL v3 license. | |||
- | |||
- End User License Agreement: www.juce.com/juce-5-licence | |||
- | |||
- ========================================================================== | |||
- */ | |||
- | |||
- // BEGIN SECTION A | |||
- | |||
- #if ! JucePlugin_Build_Standalone | |||
- splashScreen = new JUCESplashScreen (*this); | |||
- #endif | |||
- | |||
- // END SECTION A | |||
- | |||
defaultConstrainer.setMinimumOnscreenAmounts (0x10000, 16, 24, 16); | |||
lastNonFullScreenPos.setBounds (50, 50, 256, 256); | |||
diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.h b/modules/juce_gui_basics/windows/juce_ResizableWindow.h | |||
index 27c709cc6..01aeee19f 100644 | |||
--- a/modules/juce_gui_basics/windows/juce_ResizableWindow.h | |||
+++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.h | |||
@@ -376,7 +376,7 @@ protected: | |||
private: | |||
//============================================================================== | |||
- Component::SafePointer<Component> contentComponent, splashScreen; | |||
+ Component::SafePointer<Component> contentComponent; | |||
bool ownsContentComponent = false, resizeToFitContent = false, fullscreen = false, canDrag = true, dragStarted = false; | |||
ComponentDragger dragger; | |||
Rectangle<int> lastNonFullScreenPos; |
@@ -1,14 +0,0 @@ | |||
diff --git a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | |||
index bf7b4af22..bdb285290 100644 | |||
--- a/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | |||
+++ b/modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp | |||
@@ -56,9 +56,6 @@ JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4355) | |||
#ifndef WM_APPCOMMAND | |||
#define WM_APPCOMMAND 0x0319 | |||
#endif | |||
- | |||
- extern "C" void _fpreset(); | |||
- extern "C" void _clearfp(); | |||
#elif ! JUCE_WINDOWS | |||
static void _fpreset() {} | |||
static void _clearfp() {} |
@@ -1,15 +0,0 @@ | |||
diff --git a/modules/juce_core/threads/juce_WaitableEvent.h b/modules/juce_core/threads/juce_WaitableEvent.h | |||
index 3e31a9772..766d45f75 100644 | |||
--- a/modules/juce_core/threads/juce_WaitableEvent.h | |||
+++ b/modules/juce_core/threads/juce_WaitableEvent.h | |||
@@ -20,6 +20,10 @@ | |||
============================================================================== | |||
*/ | |||
+#if JUCE_MINGW | |||
+#include "mingw-std-threads/mingw.condition_variable.h" | |||
+#endif | |||
+ | |||
namespace juce | |||
{ | |||
@@ -1,47 +0,0 @@ | |||
diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
index 159ab0c7c..e3d277de2 100644 | |||
--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
@@ -1058,7 +1058,7 @@ public: | |||
void paint (Graphics&) override {} | |||
- void getEditorBounds (Vst2::ERect& bounds) | |||
+ void getEditorBounds (Vst2::VstEditorBounds& bounds) | |||
{ | |||
auto b = getSizeToContainChild(); | |||
bounds = convertToHostBounds ({ 0, 0, (int16) b.getHeight(), (int16) b.getWidth() }); | |||
@@ -1199,8 +1199,8 @@ public: | |||
void resizeHostWindow (int newWidth, int newHeight) | |||
{ | |||
auto rect = convertToHostBounds ({ 0, 0, (int16) newHeight, (int16) newWidth }); | |||
- newWidth = rect.right - rect.left; | |||
- newHeight = rect.bottom - rect.top; | |||
+ newWidth = rect.rightmost - rect.leftmost; | |||
+ newHeight = rect.lower - rect.upper; | |||
bool sizeWasSuccessful = false; | |||
@@ -1329,17 +1329,17 @@ public: | |||
#endif | |||
//============================================================================== | |||
- static Vst2::ERect convertToHostBounds (const Vst2::ERect& rect) | |||
+ static Vst2::VstEditorBounds convertToHostBounds (const Vst2::VstEditorBounds& rect) | |||
{ | |||
auto desktopScale = Desktop::getInstance().getGlobalScaleFactor(); | |||
if (approximatelyEqual (desktopScale, 1.0f)) | |||
return rect; | |||
- return { (int16) roundToInt (rect.top * desktopScale), | |||
- (int16) roundToInt (rect.left * desktopScale), | |||
- (int16) roundToInt (rect.bottom * desktopScale), | |||
- (int16) roundToInt (rect.right * desktopScale)}; | |||
+ return { (int16) roundToInt (rect.upper * desktopScale), | |||
+ (int16) roundToInt (rect.leftmost * desktopScale), | |||
+ (int16) roundToInt (rect.lower * desktopScale), | |||
+ (int16) roundToInt (rect.rightmost * desktopScale)}; | |||
} | |||
//============================================================================== |
@@ -1,34 +0,0 @@ | |||
diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
index d0c1884db..c87b97d49 100644 | |||
--- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
+++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp | |||
@@ -210,9 +210,9 @@ struct SharedMessageThread : public Thread | |||
void run() override | |||
{ | |||
initialiseJuce_GUI(); | |||
- initialised = true; | |||
MessageManager::getInstance()->setCurrentThreadAsMessageThread(); | |||
+ initialised = true; | |||
while ((! threadShouldExit()) && MessageManager::getInstance()->runDispatchLoopUntil (250)) | |||
{} | |||
@@ -300,9 +300,6 @@ public: | |||
// You must at least have some channels | |||
jassert (processor->isMidiEffect() || (maxNumInChannels > 0 || maxNumOutChannels > 0)); | |||
- if (processor->isMidiEffect()) | |||
- maxNumInChannels = maxNumOutChannels = 2; | |||
- | |||
#ifdef JucePlugin_PreferredChannelConfigurations | |||
processor->setPlayConfigDetails (maxNumInChannels, maxNumOutChannels, 44100.0, 1024); | |||
#endif | |||
@@ -1827,7 +1824,7 @@ private: | |||
pointer_sized_int handleGetPlugInName (VstOpCodeArguments args) | |||
{ | |||
- String (JucePlugin_Name).copyToUTF8 ((char*) args.ptr, 64 + 1); | |||
+ String (processor->getName()).copyToUTF8 ((char*) args.ptr, 64 + 1); | |||
return 1; | |||
} | |||