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

15020 commits

Author SHA1 Message Date
reuk
80b190b75d
Projucer: Bump minimum supported Android API level 2025-03-18 14:38:12 +00:00
attila
ae4bca24f4 TextEditor: Fix crash when the caret is beyond a newline in the last position 2025-03-18 15:14:10 +01:00
Tom Poole
53b96db0d5 GHA: Fix nightly build notifications 2025-03-18 06:33:06 -07:00
attila
4362f9e0df File: Document setReadOnly behaviour for Windows directories 2025-03-17 15:32:59 +01:00
attila
273c7936d3 Direct2D: Fix text drawing using gradients when the screen scaling is 1 2025-03-17 15:32:59 +01:00
attila
432a7e1c9a Fix C++20 compilation 2025-03-14 10:03:11 +01:00
Oliver James
04ed3559a6 CMake (MSVC): Make Z7 default debug info flag 2025-03-13 13:14:13 +00:00
Oliver James
62028e6773 Projucer (MSVC): Make Z7 default debug info flag 2025-03-13 13:14:13 +00:00
attila
9ce2feaf41 TextEditor: Improve Unicode editing behaviour and performance 2025-03-13 12:16:16 +01:00
attila
427852836c ShapedText: Break ligatures into multiple iterable placeholder glyphs 2025-03-13 12:16:16 +01:00
attila
bc093fa64c Ranges: ShapedText: Use out params for improving TextEditor performance 2025-03-13 12:16:16 +01:00
attila
a4f73a37af ShapedText: Fix input text range calculation logic during wrapping 2025-03-13 12:16:16 +01:00
attila
bfbdc4844d ShapedTextOptions: Fix uninitialised member variable 2025-03-13 12:16:16 +01:00
attila
50863c144e ShapedTextOptions: Add equality operators 2025-03-13 12:16:16 +01:00
attila
d72df5faa3 ShapedText: Add bidirectional lookup functions relating positions, input indices and glyph indices 2025-03-13 12:16:16 +01:00
attila
6cf697bd6d Ranges: Add equality operators 2025-03-13 12:16:16 +01:00
attila
2842c8ef8e Add detail::Ranges::getRanges() 2025-03-13 12:16:16 +01:00
attila
6c3043f082 Add detail::UnicodeHelpers::getLineBreaks 2025-03-13 12:16:16 +01:00
attila
a07098d479 Add ShapedText::getHeight() 2025-03-13 12:16:16 +01:00
attila
213d3fb56a Add RangedValues::getIntersectionsStartingAtZeroWith 2025-03-13 12:16:16 +01:00
attila
2d24504cd1 Change the return type of RangedValues::getIntersectionsWith
This is to avoid converting the returned value to RangedValues at the
call site.
2025-03-13 12:16:16 +01:00
attila
8dccb38081 Make IntersectingRangedValues independent from the RangedValues type
With this change you can use makeIntersectingRangedValues() not just for
RangedValues objects, but any object that has a begin() and end()
function returning a RangedValuesIterator.
2025-03-13 12:16:16 +01:00
attila
5b04493fb8 Ranges: Make RangedValuesIterator independent from the RangedValues type
This commit also relaxes the requirements imposed on the types for which
RangedValuesIterators can be created.
2025-03-13 12:16:16 +01:00
attila
43608a5208 Ranges: Store more information in Split and Change operations
This allows implementing more sophisticated logic in types wrapping
Ranges and RangedValue objects.
2025-03-13 12:16:16 +01:00
attila
ef840b7472 Use detail::RangedValues<Font> on ShapedText related interfaces
Previously using the FontForRange type was motivated by hiding the
RangedValues type in case we wanted to expose the ShapedText API. This
introduced unnecessary conversions between FontForRange and
RangedValues<Font>.
2025-03-13 12:16:16 +01:00
attila
ad43702e88 Add detail::RangedValues::shift 2025-03-13 12:16:16 +01:00
attila
fab1de34ab Add ShapedText::accessTogetherWith and remove ShapedText::access
Since the original function template has been exposed, we can now use it
directly. Also ShapedText::Detail has been removed, because it wouldn't
work across module boundaries.
2025-03-13 12:16:16 +01:00
attila
1b595311d0 Move ShapedText to the detail namespace and expose it in the headers
This makes it accessible for the new TextEditor implementation in
juce_gui_basics.
2025-03-13 12:16:16 +01:00
attila
e31fb368b6 Unicode TR14: Always return a hard break for line breaking code points
Prior to this commit a soft break would be returned at the end of text,
even if the text was terminated by a newline.
2025-03-13 12:16:16 +01:00
Tom Poole
b163bc7a1f GHA: Set individual artifact retention-days 2025-03-12 11:51:16 +00:00
Tom Poole
cdbfc7e677 GHA: Fail the cleanup job if the overall workflow is cancelled or failed 2025-03-12 09:20:53 +00:00
Tom Poole
f9041f281e GHA: Add cleanup stage 2025-03-10 16:45:20 +00:00
Tom Poole
dabb602dd9 GHA: Don't notify after cancelled jobs 2025-03-07 16:44:45 +00:00
Tom Poole
86f8460d3e GHA: Add commit status 2025-03-07 16:19:40 +00:00
attila
4deee6976b AU Client: Fix calling makeFirstResponder for nil window in Ableton Live
When pressing the Escape key the call to hostView keyDown: closes the
plugin window and the subsequent [hostView window] returns nil.
2025-03-06 18:33:10 +01:00
Tom Poole
8c1ff91aa3 GHA: Conditionally notify workflow success 2025-03-06 11:00:51 +00:00
reuk
d77b34f432
PopupMenu: Add notes for testing scenarios 2025-03-05 21:27:51 +00:00
reuk
d39789b021
PopupMenu: Remove timeout before highlighting item under mouse
We now require a mouse movement before highlighting menu items. This is
intended to ensure that the user has intentionally highlighted the menu
item that they wish to trigger.
2025-03-05 21:27:51 +00:00
reuk
51b0319342
PopupMenu: Always attach a global mouse listener
This makes behaviour more consistent between the parented and
non-parented display modes.

Before this change, parented popup menus wouldn't respond to mouse
clicks until the mouse was released once, which meant that clicking and
dragging the mouse over a menu wouldn't trigger a menu item on mouse-up.
2025-03-05 21:27:50 +00:00
reuk
b0d7bad5ee
PopupMenu: Refactor Timer usage in MouseSourceState implementation 2025-03-05 21:27:50 +00:00
Tom Poole
384b18e441 GHA: Always notify 2025-03-05 08:39:14 +00:00
Tom Poole
f79b88d826 GHA: Add more verbose logging 2025-03-05 08:20:15 +00:00
Tom Poole
35c7afc6a1 Add GitHub Actions configuration 2025-03-04 11:36:41 +00:00
reuk
9a6f925bcb
NSViewComponentPeer: Fix typo that prevented graceful exit of kiosk mode 2025-03-03 14:41:32 +00:00
reuk
518240cd61
Zlib: Fix unknown-symbols errors when building with clang, windows, C++20/23 2025-03-03 14:41:32 +00:00
reuk
90695ce7b6
SystemStats: Silence function-cast warnings 2025-03-03 14:41:31 +00:00
Anthony Nicholls
f985cf0c31 iOS: Restore sample rate after iterating available sample rates 2025-02-27 14:50:53 +00:00
Anthony Nicholls
76e498f495 AudioDeviceManager: Skip validation when there is only one device 2025-02-27 14:50:53 +00:00
Anthony Nicholls
a433e4dce0 iOS: Set target settings before updating hardware info to reduce the number of device changes 2025-02-27 14:50:53 +00:00
Anthony Nicholls
462c1c857e iOS: Improve performance when detecting and changing sample rates 2025-02-27 14:50:53 +00:00