1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00
Commit graph

8061 commits

Author SHA1 Message Date
reuk
087cda7e1f
HWNDComponentPeer: Fix reentrancy bug in DPICHANGED handler
Sometimes, changing the bounds of the window inside the DPICHANGED
handler can cause further DPI change events to be processed. Previously,
the scaleFactor set by the "inner" events was also being used when
notifying listeners about the "outer" events, leading to graphical
glitches.

An effect of the bug was that VST2 views in the AudioPluginHost would
occasionally render with an incorrect size and position after dragging
them between displays with different scale factors.

With this change in place, we only notify listeners and update window
bounds once there are no DPI changes in progress.
2021-07-30 09:20:11 +01:00
reuk
f46d4a0401
VST Client: Remove unused variable 2021-07-30 09:18:46 +01:00
reuk
5ea5afbd2a
VST Host: Avoid resizing plugin views directly on Windows
Previously, plugin views may be set to unexpected sizes by the host,
which could interrupt size updates due to scale factor changes. This
could leave the plugin view at an incorrect size.
2021-07-30 09:17:11 +01:00
reuk
e7d608aa48 VST3 Host: Ensure that editors open correctly on monitors with non-unity scaling 2021-07-28 19:28:34 +01:00
reuk
20c23700e5 MinGW: Fix some build issues for 32-bit platforms 2021-07-28 19:28:34 +01:00
ed
5d7f59a19d Accessibility: Fix focus transfer issue when hiding modal components 2021-07-28 16:03:29 +01:00
ed
c66e8baf7e Whitespace 2021-07-28 16:03:22 +01:00
ed
8f03215a9e Accessibility: Add Android support 2021-07-28 11:44:29 +01:00
ed
30654fb8ec Accessibility: Add iOS support 2021-07-28 11:44:29 +01:00
ed
da57f65f3f Accessibility: Add juce_AccessibilityTextHelpers.h 2021-07-28 11:44:29 +01:00
ed
588e776bb6 Accessibility: Remove redundant method declaration and general fixups 2021-07-28 11:44:29 +01:00
ed
17ca903aaa Accessibility: Don't give focus to currently keyboard focused component in AccessibilityHandler::giveAwayFocusInternal() 2021-07-28 11:44:29 +01:00
ed
1028b6e5d1 Accessibility: Fix inaccessible MenuBarComponent items 2021-07-28 11:44:28 +01:00
ed
a2f7aaab2f Accessibility: Don't create AccessibilityHandler for Components without a native window handle 2021-07-28 11:44:28 +01:00
ed
d6a5156dd5 Objective-C++: Make getIvar() a free function so it can be used without a class instance 2021-07-28 11:44:28 +01:00
ed
ddb59d1361 Docs: Fix typo in Component child adding methods 2021-07-28 10:13:10 +01:00
reuk
802f33b0e8
Thread: Avoid setting realtime priority on Thread instances by default on POSIX systems 2021-07-27 15:11:05 +01:00
reuk
1de762218a
Thread: Check for realtimeAudioPriority in more locations 2021-07-27 15:11:05 +01:00
reuk
c27279b356
DryWetMixer: Make mixers with maximum delays of 0 slightly more efficient 2021-07-27 15:11:05 +01:00
reuk
8f29b2cb83
VST3: Allow plugins to designate the first input bus as Aux rather than Main
To use this feature, derive your AudioProcessor from
VST3ClientExtensions and override getPluginHasMainInput() to return
false. The main input bus will then be designated as an Aux bus, rather
than a Main bus.

This is mainly useful for synth plugins like vocoders, which may need a
sidechain audio input, but which should replace all audio on the channel
with the output of the synth, rather than mixing with the audio input.
2021-07-27 15:10:53 +01:00
reuk
34f308bc5a
Convolution: Update docs for stylistic consistency 2021-07-27 15:10:53 +01:00
ed
0f76c7d097 POSIX: Close file handle after mapping in MemoryMappedFile::openInternal() to avoid hitting max open file limit 2021-07-27 14:34:30 +01:00
ed
c5bcfd5c3f macOS: Use the NSOpenPanel message property to display the FileChooser title correctly 2021-07-27 14:34:30 +01:00
ed
6d53ed3fec AUv3: Handle AURenderEventMIDIEventList 2021-07-27 12:32:28 +01:00
ed
cffb544941 UMP: Remove juce_audio_devices dependency 2021-07-27 12:32:22 +01:00
ed
bdc2334c98 AUv3: Fix unhandled enumeration warning when building against the 12.0 SDK 2021-07-26 10:21:51 +01:00
ed
d52fb9ca26 AUv3: Suppress undeclared selector warning for supportsMPE when building against the 10.11 SDK 2021-07-26 10:21:51 +01:00
reuk
074d188239
Add ScopedLowPowerModeDisabler to suppress App Nap on macOS 2021-07-23 17:13:18 +01:00
ed
4b5c59dbae NullCheckedInvocation: Add missing tag and namespace comment to class declaration 2021-07-23 16:07:54 +01:00
reuk
4980788516
AudioProcessor: Add checks to ensure AAX parameter ID compatibility
The AAX SDK already checks for truncated IDs internally. If any ID is
truncated, details will be written to Pro Tools' log file (you may need
to enable logging first). Search for "AAX_ASSERT" in the log to find
triggered assertions.
2021-07-23 10:58:44 +01:00
reuk
3c68581567
Use jassertquiet where possible 2021-07-23 10:58:44 +01:00
reuk
46e62b9efe
PlatformDefs: Add new jassertquiet macro
This behaves a lot like jassert, but will never emit unused-variable
warnings.
2021-07-23 10:58:43 +01:00
reuk
19e1488e18
Slider: Add getScrollWheelEnabled function 2021-07-23 10:50:00 +01:00
ed
88d2edf189 ModalCallbackFunction: Use NullCheckedInvocation helper to fix potential crash due to calling null std::function 2021-07-22 16:33:42 +01:00
ed
a62f0f91d6 Add juce_Functional.h containing NullCheckedInvocation helper 2021-07-22 16:33:42 +01:00
ed
3d4d0caca8 ModalCallbackFunction: Fix crash due to dangling reference 2021-07-22 16:33:42 +01:00
ed
cf79cc4724 Whitespace 2021-07-22 16:33:42 +01:00
ed
4fd0401752 VST3: Fix editor creation in Adobe Premiere Pro
See commit message of a1337a38 for more details
2021-07-22 16:33:42 +01:00
attila
7c68dd3709 VST3 Client: Avoid allocation in processParameterChanges() 2021-07-22 12:18:11 +02:00
ed
551d7b9c5b Add MessageBoxOptions class for specifying a set of AlertWindow and NativeMessageBox options
- Add AlertWindow::show() and showAsync() methods that take a MessageBoxOptions argument
  - Add NativeMessageBox::show() and showAsync() methods that take a MessageBoxOptions argument
  - Update the DialogsDemo to demonstrate the new methods
  - Deprecate AlertWindow::showNativeDialogBox() in favour of the NativeMessageBox methods
  - Pass button strings specified in MesssageBoxOptions to native dialog boxes correctly
  - Use modern TaskDialog on Windows for the native dialog box where available
2021-07-21 16:34:12 +01:00
Tom Poole
3ebd548aac VST3: Ignore VS2015 static analysis warning in VST3 SDK 2021-07-20 11:48:06 +01:00
ed
a2d03d2266 Fixed some warnings flagged by Clang's static analyzer 2021-07-19 15:48:31 +01:00
ed
d3556dfd7f macOS Accessibility: Fixed a memory leak when checking for active accessibility clients 2021-07-16 14:21:30 +01:00
ed
db2036e81a ChoicePropertyComponent: Return default index if value is not found in value source mapper 2021-07-16 12:05:35 +01:00
ed
e467473157 Standalone: Fixed a crash due to a dangling input muted value listener 2021-07-15 14:32:42 +01:00
reuk
3d97343c2a
GCC: Fix redundant redeclaration warnings 2021-07-15 09:59:08 +01:00
reuk
48659d6e9b
MIDI: Avoid data races in Linux MidiInput 2021-07-15 09:59:08 +01:00
reuk
1d29091133
FileChooser: Always set initial directory if the initialFileOrDirectory argument is not empty 2021-07-14 15:40:58 +01:00
reuk
90ad1877af
OpenGL: Only use vertex arrays if the GL version is greater or equal to 3 2021-07-14 14:49:15 +01:00
reuk
85226c33d4
Mac MainMenu: Allow commands without modifiers to be passed to peer
Ideally, we want to pass shortcut keys to the component to handle, and
only fall back to invoking a menu item if the component was unable to
handle the keyboard event, or if the action was triggered by
clicking/selecting an item in the menu itself. The old implementation
tried to work out whether the action was triggered by a shortcut by
checking the event's characters and modifiers. This method was
inaccurate, because some shortcuts (such as arrow keys) may add
unexpected numpad/function modifier flags.

We now try handling shortcut keys directly in the peer, and pass events
up to the superclass (which will forward them to the main menu) if the
event could not be handled.

This commit also adjusts some Objective-C method signatures to use the
correct string encoding for the BOOL type.
2021-07-14 14:49:05 +01:00