reuk
88bd3b0bbb
ObjCClass: Remove virtual destructor and add move operations
...
ObjCClass doesn't have other virtual methods; it is not intended to be
used as an interface or dynamic type. Removing the virtual destructor
is intended to promote composition over inheritance when using this
type.
2025-06-19 14:48:06 +01:00
reuk
6190384fe1
UMPFactory: Use new stronger types
2025-06-19 14:48:06 +01:00
reuk
9da7c5ce53
MIDI: Add stronger MessageKind type in UMPUtils.h
2025-06-19 14:48:06 +01:00
reuk
523f6eed0c
MidiDemo: Add virtual ins/outs to allow connections from other applications
2025-06-19 14:48:06 +01:00
reuk
59f04f66b0
Projucer: Add support for Windows MIDI Services nuget package
2025-06-19 14:48:06 +01:00
reuk
337dc27092
CMake: Add support for optional Windows MIDI Services dependency
2025-06-19 14:48:05 +01:00
reuk
0e7e7a9b75
StringArray: Add nodiscard
2025-06-19 14:48:05 +01:00
reuk
e80ce08a85
Bela: Drop support
2025-06-19 14:48:05 +01:00
reuk
8896ae72d3
JNI: Add WeakGlobalRef helper type
2025-06-19 14:48:05 +01:00
reuk
a22585553d
JNI: Tidying
2025-06-19 14:48:05 +01:00
reuk
8d935b25b2
Windows: Disable edge-resizer cursors for kiosk-mode windows
2025-06-19 14:45:31 +01:00
reuk
3e70c37ce3
Windows: Disable window decorations for kiosk-mode windows
...
This fixes an issue where kiosk-mode windows would incorrectly receive
rounded corners and a 1px transparent border.
2025-06-19 14:45:31 +01:00
reuk
aa9b352483
Windows: Use ScopedValueSetter to make function implementation more concise
2025-06-19 14:45:31 +01:00
reuk
70f3c788b7
Toolbar: Avoid use-after-free when toolbar is destroyed before customisation dialog
2025-06-19 14:45:30 +01:00
reuk
9b9b98bc8f
Windows: Make static data members inline
2025-06-19 14:45:30 +01:00
reuk
6bc274286f
Windows: Fix mouse state tracking when mouse leaves window
...
467f20a7a1 introduced a change to start processing WM_NCMOUSELEAVE
messages as mouse-exit events. This behaviour is not quite correct,
because NCMOUSELEAVE may be triggered when moving the cursor from the
nonclient area to the client area, in which case the mouse is still over
the window.
We now check whether the mouse is really over the window inside
doMouseExit(), and continue to track it if necessary.
2025-06-19 14:45:30 +01:00
reuk
b8e0146a3c
Network: Make Linux networking code robust against user headers that already end with CRLF
2025-06-19 14:45:30 +01:00
reuk
58fabf3a8f
XmlElement: Add new API to allow iterating over attributes
2025-06-19 14:45:30 +01:00
reuk
a3f813d8a5
ToolbarItem: Tidy up constructor
2025-06-19 14:42:49 +01:00
reuk
5d7208bb54
ModifierKeys: Avoid direct access to currentModifiers when reading but not writing
2025-06-19 14:42:49 +01:00
reuk
0a71227126
DemoRunner: Protect against null peer when updating renderer
2025-06-19 14:42:49 +01:00
Oli
8fd73d33a8
Graphics: Modify imported libjpeg sources for unity build compatibility
2025-06-19 13:18:43 +01:00
Oli
34c8704a25
Graphics: Import JPEG library code
2025-06-19 13:18:42 +01:00
Oliver James
7f00a8bcb4
Projucer (MSVC): Make Zi default debug info flag
...
This restores the original debug-flag for MSVC projects generated by the Projucer.
2025-06-19 12:03:26 +01:00
Oliver James
4a79bc5cfd
CMake (MSVC): Make Zi default debug info flag
...
This restores the original debug-flag for CMake builds on Windows.
2025-06-19 12:03:26 +01:00
Oli
20b6a2c290
DemoRunner: Add FontFeatures Demo
2025-06-17 12:38:20 +01:00
Oliver James
d651f6740c
Fonts: Add OpenType feature support
2025-06-17 12:38:20 +01:00
Tom Poole
a5797efeb0
CI: Handle more errors when connecting to the GitHub API
2025-06-17 09:59:44 +01:00
attila
f371fecb34
Fix compilation when JUCE_USE_LAME_AUDIO_FORMAT=1
...
This fixes a regression in 1ce35453db .
2025-06-17 10:13:52 +02:00
Tom Poole
e926ecb9e9
CI: Fix skipped docs job
2025-06-17 09:02:33 +01:00
reuk
fa701a1bd9
SimpleShapedText: Use string with replaced whitspace during fallback font substitution
...
This is intended to address an assertion that sometimes fired during
shaping text on Android, for example when using the font "Noto Sans
Symbols" and shaping ASCII text including a line break in a multiline
text editor.
The cause of the issue seems to be that the shaper would search for
substitute fonts using the original string content, but would then
replace some characters in the string during shaping. Shaping could then
fail if the font did not contain glyphs for the replaced characters.
We now create a UTF32 string with replaced characters at the beginning
of the shaping process, and use that new string for all queries other
than unicode analysis.
2025-06-16 16:59:55 +01:00
reuk
e5049ad6e9
SimpleShapedText: Avoid UTF8-lookup allocations
2025-06-16 16:59:55 +01:00
reuk
a3d64c7784
Typeface: Enable advanced colour glyph rendering on Android
...
Android 15+ removed the 'legacy' png-based emoji font. Modern Android
versions may include only a COLR-v1-based font, which JUCE cannot
render itself.
As a workaround, on Android, we use a Canvas object to render each emoji
glyph into a bitmap, and then render that bitmap in the same way as a
legacy png-based glyph. This won't look as crisp as rendering COLRv1
glyphs directly, especially at larger sizes, but this is a sufficient
stop-gap for the time being.
2025-06-16 16:59:55 +01:00
reuk
70a2dd7e15
UIViewComponentPeer: Adopt the UIScene lifecycle on iOS 13+
2025-06-16 16:59:55 +01:00
reuk
2c5b1fbb6f
NativeMessageBox: On iOS, prefer the peer of the associatedComponent to the focused peer to determine the parent controller
2025-06-16 16:59:55 +01:00
Tom Poole
6bee9d515c
CI: Don't unconditionally skip the deploy job if the build job was skipped
2025-06-16 14:34:34 +01:00
Tom Poole
ca10a2c56b
CI: Skip main build if check has already passed
2025-06-16 11:51:11 +01:00
attila
1ce35453db
Deprecate the old AudioFormat::createWriterFor functions
2025-06-12 20:02:33 +02:00
attila
eb7de7f15b
AudioRecordingDemo: Use the new AudioFormat::createWriterFor overload
2025-06-12 20:02:33 +02:00
attila
9feee44070
AUv3SynthPluginDemo: Use the new AudioFormat::createWriterFor overload
2025-06-12 20:02:33 +02:00
attila
386daafe23
WavAudioFormat: Add support for writing 32 bit integral (PCM) format
2025-06-12 20:02:33 +02:00
Anthony Nicholls
34675235e5
VST3: Prevent some warnings
2025-06-12 15:52:01 +01:00
Anthony Nicholls
26edac975d
VST3: Fix a bug converting a compatibility ID to a string
2025-06-12 15:52:01 +01:00
Anthony Nicholls
7c7e51176e
VST3: Include the name and version in the moduleinfo
2025-06-12 15:52:01 +01:00
Anthony Nicholls
af256aab02
VST3: Prevent a compiler warning
2025-06-11 15:50:44 +01:00
reuk
37bb7a6c30
iOS: Fix deprecation warning
2025-06-10 20:16:02 +01:00
reuk
6f1d116279
macOS: Add initial macOS 26 suport
2025-06-10 20:15:58 +01:00
Anthony Nicholls
46703f3e65
PluginListComponent: Replace inappropriate naming with more suitable alternatives
2025-06-10 16:14:06 +01:00
Anthony Nicholls
f3d7c74ea1
VST3: Allow manifest helper to run independently
2025-06-10 16:13:33 +01:00
Anthony Nicholls
80116d60da
VST3: Platform header should be included from user supplied SDK
2025-06-10 16:13:33 +01:00