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

15608 commits

Author SHA1 Message Date
reuk
1237b34c84
Windowing: Avoid dynamically loading GetSystemMetricsForDpi, which is always present on Windows 10 2025-12-16 12:03:35 +00:00
reuk
5048d359e5
Windowing: Avoid dynamically loading EnableNonClientDpiScaling, which is always present on Windows 10 2025-12-16 12:03:35 +00:00
reuk
e2a1af48e5
Windowing: Avoid dynamically loading GetWindowDpiAwarenessContext, which is always present on Windows 10 2025-12-16 12:03:35 +00:00
reuk
f34de2438c
Windowing: Avoid dynamically loading GetAwarenessFromDpiAwarenessContext, which is always present on Windows 10 2025-12-16 12:03:35 +00:00
reuk
ad95f9d88c
Windowing: Avoid dynamically loading GetThreadDpiAwarnessContext, which is always present on Windows 10 2025-12-16 12:03:34 +00:00
reuk
016cf341bf
Windowing: Avoid dynamically loading SetThreadDpiAwarenessContext, which is always present on Windows 10 2025-12-16 12:03:34 +00:00
reuk
2591068b61
Windowing: Avoid dynamically loading GetProcessDpiAwareness, which is always present on Windows 8.1 2025-12-16 12:03:34 +00:00
reuk
f1d215f014
Windowing: Avoid dynamically loading SetProcessDpiAwareness, which is always present on Windows 8.1 2025-12-16 12:03:34 +00:00
reuk
09ae83a367
Windowing: Avoid dynamically loading SetProcessDpiAwarenessContext, which is always present on Windows 10 2025-12-16 12:03:34 +00:00
reuk
63410e78e7
Windowing: Avoid dynamically loading GetDpiForMonitor, which is always present on Windows 8.1 2025-12-16 12:03:34 +00:00
reuk
b4749b1f86
Windowing: Avoid dynamically loading SetProcessDPIAware, which is always present on Vista 2025-12-16 12:03:34 +00:00
reuk
2261575b00
Windowing: Avoid dynamically loading GetDpiForWindow, which is always present on Windows 10 2025-12-16 12:03:34 +00:00
reuk
83e3cd8be9
WASAPI: Fix issue where current buffer size could be misreported in non-low-latency non-exclusive mode
In shared mode (i.e. non-low-latency, non-exclusive) the driver has sole
responsibility for setting the wakeup period, and this cannot be changed
by the application. This change ensures that the audio device always
uses the buffer size reported by the audio hardware, even when that
differs from the buffer size that was requested by the program.
2025-12-16 12:03:34 +00:00
reuk
95eef1995a
Variant: Make DynamicObject comparison more intuitive 2025-12-16 12:03:34 +00:00
reuk
4488813de7
DynamicObject: Add implementation of equals() 2025-12-16 12:03:34 +00:00
Tom Poole
29396c22c9 JUCE version 8.0.12 2025-12-16 08:51:21 +00:00
reuk
2e72048cd2 Projucer: Enable ARM64EC for Visual Studio 2026 exporter 2025-12-16 08:50:50 +00:00
Tom Poole
edeb175c12 Resave all projects 2025-12-16 08:50:10 +00:00
Tom Poole
acc4b9c6d0 Bump version number to 8.0.12 2025-12-16 08:48:49 +00:00
Tom Poole
7617f6b480 Projucer: Fix a module path in provided projects 2025-12-12 20:35:44 +00:00
Aga Janowicz
195795047e
DrawableText: 0-initialise fontHeight and fontHScale variables 2025-12-08 17:19:57 +00:00
reuk
1b0911dda6
iOS: Always update peer bounds when window scene coordinate space is updated 2025-12-08 14:19:45 +00:00
reuk
4d1c9c9b12
AccessibilityHelpers: Move function definition out of header 2025-12-08 14:15:55 +00:00
reuk
44c552c614
AudioPluginInstance: Use inherited constructors directly 2025-12-08 14:15:55 +00:00
Kengo Suzuki
84bcf6965c
CMake: Remove dead code in _juce_configure_bundle function 2025-12-08 14:15:55 +00:00
reuk
caac369b45
MIDI: Remove separating ':' between endpoint name and group name 2025-12-08 14:15:50 +00:00
Anthony Nicholls
1a66a03103 InAppPurchaces: Increase Android minimum SDK for JuceBillingClient 2025-12-04 16:13:21 +00:00
reuk
54813c8937
Projucer: Make VS2026 the default exporter on Windows 2025-12-03 13:13:11 +00:00
reuk
2a9c249aba
Projucer: Enable ARM64EC for Visual Studio 2026 exporter 2025-12-03 12:08:06 +00:00
Tom Poole
c352e24890 JUCE version 8.0.11 2025-12-01 10:27:34 +00:00
Tom Poole
8f2fa81bd1 Resave all projects 2025-12-01 10:25:47 +00:00
Tom Poole
ae3b811c50 Bump version number to 8.0.11 2025-12-01 10:21:13 +00:00
reuk
eecf40ba95 Direct2D: Avoid creating multiple MemoryFontFileLoaders all referencing the same data 2025-11-27 13:25:55 +00:00
szkkng
230340dbfc
Docs: Correct VST3_CATEGORIES defaults in CMake API 2025-11-26 10:32:20 +00:00
reuk
540830506b
MemoryOutputStream: Avoid integer overflow which may result in incorrect size after expansion 2025-11-26 10:32:20 +00:00
attila
65e9bf1c52 Fix bug where a disabled ComboBox could be displayed using screen readers 2025-11-26 10:17:06 +01:00
attila
07f801143c Fix bug where a disabled ToggleButton could be toggled using screen readers 2025-11-26 10:17:06 +01:00
attila
fd1c29e56b WASAPI: Fix bug where an external device sample rate change could permanently stop audio processing 2025-11-25 20:23:26 +01:00
reuk
e26c69e7bf
Docs: Fix up description of FORMATS argument in CMake API doc 2025-11-24 12:54:39 +00:00
Anthony Nicholls
10ec977d05 Component: Revert improvements to opaque component checks
Reverts commits cea19a9d, 961ff32b, and partially reverts 5ec4d85d
Some issues have appeared on the forums so these commits have been
reverted while the issue is investigated.
2025-11-20 17:47:47 +00:00
Anthony Nicholls
fc29df83b5 Direct2D: Fix an issue with excludeClipRectangle
Without this fix many of the component tests that appear in the
following commit will fail for the Direct2D renderer only.
2025-11-20 17:47:47 +00:00
Anthony Nicholls
a4e03bdad1 CharPointer: Fix a crash in the UTF32 unit tests
In a recent version of Xcode (26.1) release builds would crash the
unittest runner during any tests using a std::vector<char32_t> where
its data was reinterpreted as const CharPointer_UTF32::CharType*.
Similar attempts were made to update the UTF8 a UTF16 tests,
unfortunately avoiding a reinterpret_cast for UTF16 isn't as easy
because CharPointer_UTF16 uses a signed integer type which makes the
test data more awkward to work with.
2025-11-20 17:43:41 +00:00
Anthony Nicholls
c37c18c5b4 macOS: Prevent visual glitches in images
CGImages created from a juce Image may be drawn after or during
changes to the underlying data. This change copies the required
data into a new buffer to ensure the CGImage data is always
independent from the juce image data.
2025-11-20 15:04:46 +00:00
reuk
f0560cefbb
String: Fix mangled decoding of UTF-16 strings containing surrogate pairs in createStringFromData() 2025-11-19 20:01:17 +00:00
reuk
e3f3d32fe6
UIViewComponentPeer: Remove rootViewController from old window before adding it to new window
This fixes an issue where the view would disappear and the window would
become black when the window scene changed, e.g. because screen sharing
was started.
2025-11-19 14:09:52 +00:00
attila
a9779b4546 OpenGL: Fix missing buffered image after context detach
Prior to this commit a Component with setBufferedToImage (true) could
have its image buffer deleted when an OpenGL context was detached. This
meant that this Component continued to be rendered without buffering
even though it was previously requested that it use a buffer.
2025-11-19 14:07:59 +01:00
reuk
ef54f013c3
QuickJS: Update header from CHOC upstream, and disable CONFIG_STACK_CHECK
The CONFIG_STACK_CHECK option doesn't work correctly when the QuickJS
engine is initialised on one thread and then later accessed by another
thread, which is a usage pattern implicitly supported by JUCE.
2025-11-19 11:12:21 +00:00
reuk
9715b901a8
OutputStream: Fix implementation of writeText when converting to UTF-16 2025-11-19 10:32:59 +00:00
reuk
8b77aca786
CharPointer_UTF16: Make behaviour consistent when iterating through unpaired surrogates
There's a few things going on in this commit:

- The implementation of CharPointer_UTF16 now uses helpers from
  CharacterFunctions to avoid a few instances of magic numbers.
- Where it makes sense, member functions of that class have been DRYed
  by e.g. implementing getAndAdvance in terms of operator*() and
  operator++().
- Added more tests for incrementing/decrementing/dereferencing
  CharPointer_UTF16.

After this change, a CharPointer_UTF16 that points to an unpaired
surrogate will always dereference to a 32-bit character with that
surrogate's value.

Note that dereferencing a CharPointer_UTF16 that points to a high
surrogate at the final code unit in a memory region is inherently
unsafe, because CharPointer_UTF16 can't track its own size, and the
dereference operation will check the following code unit to see whether
it is a low surrogate.
2025-11-18 18:54:47 +00:00
reuk
c514c95797
ScopedValueSetter: Make nodiscard 2025-11-18 15:47:42 +00:00