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

7849 commits

Author SHA1 Message Date
ed
fa17310dd1 Added back in rounding error fix from e8518048 that was overwritten in 7909af4e 2021-05-26 16:54:38 +01:00
ed
ce72fe4143 Label: Check for deletion before calling repaint() in hideEditor() 2021-05-26 16:54:38 +01:00
ed
083a5af323 TextEditor: Offset selection fill bounds by viewport position to fix bug with multi-line highlighting 2021-05-26 16:54:38 +01:00
reuk
35260b342c
NSViewComponentPeer: Adjust bounds before constraining when resizing 2021-05-26 15:37:42 +01:00
reuk
31a7c62baf
Windows: Fix and suppress some analysis warnings
This fixes warnings that are emitted when building with the `-analyze`
flag enabled.
2021-05-26 15:34:26 +01:00
reuk
54423f6583
OpenGL: Add GLEW-inspired dynamic function loading 2021-05-26 11:23:49 +01:00
ed
8a6a520026 iOS: Check if text entry caused TextInputTarget deletion before calling updateHiddenTextContent() 2021-05-26 09:21:30 +01:00
ed
b9ae71ae8f AudioProcessorEditor: Fixed a bug introduced in 5a59c92b causing editors to always be marked as resizable by the host when using the default ComponentBoundsConstrainer 2021-05-26 09:21:13 +01:00
ed
fd8c6ce15c Accessibility: Only call grabKeyboardFocus() on focusable components 2021-05-26 09:20:59 +01:00
ed
edd4ff9cfc ListBox: Select row on focus 2021-05-26 09:20:59 +01:00
ed
8dfb916e9a ListBox: Send AccessibilityEvent::rowSelectionChanged events 2021-05-26 09:20:59 +01:00
ed
a192e27961 macOS: Set NSWindow accessibilityElement property to prevent VoiceOver reading out notifications for inaccessible windows 2021-05-26 09:20:59 +01:00
ed
02c5ad29db macOS: Disable accessibility on deployment targets < 10.10 2021-05-26 09:20:59 +01:00
reuk
3b93d5d7eb FileChooser: Allow multiple directory selection on Linux/Zenity 2021-05-24 19:41:11 +01:00
reuk
0a4a67d439 PopupMenu: Use correct alignment for submenus with large borders 2021-05-24 19:40:47 +01:00
reuk
bcd7ae1fb5
PopupMenu: Avoid cropping menu items at the bottom of long menus with large borders 2021-05-24 18:48:39 +01:00
reuk
bad031aa03 iOS: Enable support for layered/async drawing 2021-05-24 15:55:29 +01:00
reuk
bc796b1636
TooltipWindow: Display tooltips at same scale as hovered components 2021-05-24 15:00:59 +01:00
reuk
1c2abc80d7
Component: Ensure getScreenPosition result is in terms of the logical coordinate space of the screen
Previously, getScreenPosition would return a result in the component's
coordinate space if it was called on a component that was not directly
or indirectly on the desktop. This behaviour is surprising and difficult
to program around. This change should ensure that the result is always
in the screen's coordinate space.
2021-05-24 14:57:26 +01:00
reuk
73523cd6a5
UIViewComponentPeer: Add support for hover and scroll events from external mice and trackpads 2021-05-21 17:00:10 +01:00
reuk
6db900926b
VST3 Client: Fix issue where host failed to receive latency change notifications
In cases where a VST3 plugin set a non-zero latency in its
prepareToPlay, and then set its latency to 0 later on, the host was not
notified about the latency change.
2021-05-21 16:30:18 +01:00
reuk
2f04d6a846
VST3 Client: Fix leak caused by unnecessary manual refcounting
In older versions of the VST3SDK, hostContext is a raw pointer,
in newer versions it's a smart pointer. If we do manual
refcounting with the smart pointer, we may cause leaks.
2021-05-21 16:29:48 +01:00
reuk
706d80216b
AudioBlock: Allow smoothing using SmoothedValues of a broader range of types 2021-05-21 16:29:48 +01:00
ed
b34e798f39 Accessibility: Fixed some bugs in Windows text navigation and readouts, improved selection and focus navigation 2021-05-20 18:24:59 +01:00
ed
5080b29626 Accessibility: Added AccessibilityHandler::isVisibleWithinParent() and improved focus support 2021-05-20 18:24:58 +01:00
ed
c359f99fb5 Accessibility: Improved macOS support for offscreen rows/cells 2021-05-20 18:24:58 +01:00
ed
b6d429a3f7 Accessibility: Add table and cell interface support to ListBox accessibility handlers 2021-05-20 18:24:58 +01:00
ed
5e6fe0db3d Accessibility: Send structure change message when TreeView viewport is scrolled 2021-05-20 18:24:58 +01:00
ed
9147a5e535 Accessibility: Ignore Viewport content holder 2021-05-20 18:24:58 +01:00
ed
82a5911d56 Accessibility: Send focus change notification in Component::enterModalState() 2021-05-20 18:24:57 +01:00
ed
361b29edb6 Offset TextEditor::getTextBounds() by viewport position 2021-05-20 18:24:57 +01:00
ed
f3aa49e0d3 Accessibility: Fixed ListBox multiple selection 2021-05-20 18:24:57 +01:00
ed
b6bb2f4882 Accessibility: Improved PopupMenu focus handling when opening and added support for submenus 2021-05-20 18:24:57 +01:00
ed
333983947e Accessibility: Removed widget_handlers 2021-05-20 18:24:56 +01:00
reuk
06544850fb
BLOCKS: Remove juce_blocks_basics module 2021-05-19 16:53:01 +01:00
ed
6bb3b9208b TreeView: Use Component::getApproximateScaleFactorForComponent() when creating drag images 2021-05-19 16:21:31 +01:00
Tom Poole
d7d350599d macOS: Use __builtin_debugtrap for assertions on ARM 2021-05-18 16:45:17 +01:00
reuk
c19cd73306
HWNDComponentPeer: Avoid dismissing modals from peer-initiated messages 2021-05-14 17:41:32 +01:00
reuk
1124ec146d VSTPluginFormat: Fix rare crash where plugins may attempt to read uninitialised pointers 2021-05-14 16:55:02 +01:00
Tom Poole
bfdda737a2 Projucer: Removed the live build 2021-05-14 12:54:07 +01:00
ed
64896eefcd Accessibility: Fixed a potential crash when re-using custom ListBox components 2021-05-13 14:35:51 +01:00
reuk
972c45a76e
VST3: Remove noisy warnings from VST3 SDK 2021-05-13 12:10:07 +01:00
reuk
900282ccf3
MinGW: Fix warnings and errors emitted when building VST3 plugins 2021-05-13 12:10:06 +01:00
reuk
52e6c4f727
VST3: Update VST3 SDK files 2021-05-13 12:10:06 +01:00
reuk
d31a1ee3ee
VST3 SDK: Revert JUCE modification to fplatform.h 2021-05-13 12:10:06 +01:00
reuk
40fa4ff90c
AU Client: Fix variable naming 2021-05-12 15:54:53 +01:00
reuk
668f16f0ec
Component: Ensure component position does not change when removed and re-added to desktop 2021-05-12 12:50:08 +01:00
reuk
47c7751750
VST3 Host: Avoid calling IMidiMapping functions on the audio thread 2021-05-12 11:14:35 +01:00
reuk
c8dae58fd2
VST3 Host: Avoid calling processBlock, prepareToPlay, and releaseResources simultaneously
The old design had us checking isActive inside our audio callbacks, and
also modifying isActive from prepareToPlay(), and releaseResources(). To
avoid race conditions, and to ensure that isActive actually reflects the
activation state of our plugin, we need to lock in these places. If we
don't lock, there's a chance that other threads will observe isActive to
be true while the plugin is not actually active (for example).

If you're not convinced, imagine this scenario:
- The message thread calls prepareToPlay. The plugin is activated.
- The audio thread starts calling processBlock, and gets as far as the
  isActive check. The plugin appears active, so we continue into
  processBlock.
- At the same time, the message thread calls releaseResources(). The
  processBlock call is still in progress, but the message thread is
  simultaneously making calls to setProcessing() and setActive(), which
  is a race.

Normally, it'd be up to the host of the AudioProcessor to ensure that
prepareToPlay() isn't called at the same time as processBlock().
However, VST3 plugins can request a restart at any time from the UI
thread, requiring us to call prepareToPlay() even while processBlock()
is running.
2021-05-12 11:14:34 +01:00
ed
8b74ec2fb7 MinGW: Exclude native accessibility code 2021-05-12 08:02:20 +01:00