1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-26 02:14:22 +00:00
Commit graph

1252 commits

Author SHA1 Message Date
reuk
7da615a7a3
Objective-C: Tidy up block usages, and document block helpers 2023-03-02 13:25:49 +00:00
reuk
28ad953a3a
Xcode: Fix nullability warnings in Xcode 14.3 2023-03-02 12:03:32 +00:00
reuk
55d1585445
NSViewComponentPeer: Allow key equivalents to propagate to inner views if they are not handled by outer views 2023-03-02 12:03:32 +00:00
reuk
edca5e9629
NativeMessageBox: Fix result codes on Linux 2023-03-02 12:03:31 +00:00
reuk
4f7e1d40c8
NativeMessageBox: Silence function pointer cast warning for MinGW 2023-02-28 19:09:26 +00:00
reuk
79ed81c24a
ScopedMessageBox: Add new helper type to bound alert window lifetimes
The biggest new feature in this commit is the addition of
NativeMessageBox::scopedAsync and AlertWindow::scopedAsync, both of
which return an instance of ScopedMessageBox that will hide the message
box in its destructor.

The code for displaying modal dialogs on Windows has also been updated.
Now, the dialog itself is run from a new thread with its own message
loop. This means that when the dialog is dismissed, the background
thread can be joined safely. In plugins, this means that there's no
danger of the plugin view being destroyed from within the message box
runloop, for example.
2023-02-22 21:00:08 +00:00
reuk
ac0ec5a7cc
Windowing: Tidy up macOS drag+drop implementation 2023-02-21 11:11:41 +00:00
reuk
92a19a9ea2
Android: Fix accessibility compatibility issues with older devices 2023-02-15 22:23:56 +00:00
reuk
eecb8ad995 UIViewComponentPeer: Call setNeedsUpdateOfSupportedInterfaceOrientations on orientation change 2023-02-14 22:29:01 +00:00
Tom Poole
29a90a0231
BSD: Fix some compiler warnings 2023-02-14 17:00:02 +00:00
reuk
408f6030e6
NSViewComponentPeer: Attempt to avoid reentrant calls to makeKeyWindow
AUv2 plugins on Arm that are hosted out-of-process (e.g. in Logic 10.7)
can sometimes crash due to endlessly recursing through becomeKeyWindow.
This tends to happen when displaying a secondary window in a plugin,
e.g. an AlertWindow, then clicking on a secondary app, then clicking
back on the AlertWindow.

To avoid this case, we check that the peer isn't already key before
calling makeKeyWindow.

Unfortunately, we can't use isKeyWindow to avoid the recursion because
this may not return true until after becomeKeyWindow has returned.
2023-02-06 19:42:09 +00:00
reuk
f5aa881b6f FileChooser: Improve modal behaviour in plugins on Windows
The previous method for finding the dialog's owner was ineffective, and
it was still possible for other windows to obscure the file picker in
many cases. Using GetActiveWindow seems to produce the expected
behaviour.
2023-02-06 17:29:04 +00:00
reuk
793df5dd3d
iOS Windowing: Avoid private selector warnings 2023-02-06 10:22:41 +00:00
attila
6c720bf3f1 Android: Add simulated mouse exit event to the mouse up callback
Without this event Components such as Button would remain in a hover
state indefinitely after being clicked on a touch screen. The simulated
event matches the behaviour of the other platforms.
2023-02-03 16:11:11 +01:00
attila
043182faa6 Linux: Avoid logging BadShmSeg error when SHM capability is not detected 2023-02-03 16:11:11 +01:00
reuk
5401ad6427
FileChooser: Allow directory selection on iOS 2023-01-25 17:07:24 +00:00
reuk
0f83e90f0d
FileChooser: Fix opening native dialogs in sandboxed macOS apps 2023-01-25 17:07:23 +00:00
reuk
9127ff39a7
Windows: Tidy up function-loader singletons 2023-01-12 19:13:57 +00:00
reuk
164c9121ce
Windows: Fix Vista/7 compatibility 2023-01-12 19:13:57 +00:00
reuk
f4f8f8e86b
iOS: Fix build issues with Xcode 10.1 2023-01-12 19:13:57 +00:00
reuk
c9ebb167a3
ScopedNotificationCenterObserver: Fix dark mode detection regression on macOS 2023-01-05 19:52:53 +00:00
attila
a93d0a7ed0 Windows: Use timer to update VBlank registration for embedded HWNDComponentPeer 2022-12-20 18:02:50 +01:00
reuk
f248a09c59
Windowing: Start repaint timer immediately on Linux 2022-12-14 11:12:59 +00:00
reuk
3fe8f8a86a
Windows: Register for suspend/resume notifications 2022-12-14 11:12:33 +00:00
reuk
676e10fdd9
XWindowSystem: Default to standard refresh rate if the real refresh rate is unavailable 2022-12-14 11:12:33 +00:00
reuk
8374725f98
XWindowSystem: Use ScopedWindowAssociation for improved DRYness 2022-12-14 11:12:32 +00:00
reuk
e8d694d6dd
XWindowSystem: Avoid C casts for pointer-like types 2022-12-14 11:12:32 +00:00
reuk
6296313d79
NSViewComponentPeer: Allow secondary windows to display correctly in fullscreen mode 2022-12-14 11:12:31 +00:00
attila
b1ff2eda65 MacOS: Generate mouse move event for the peer when using setRawMousePosition()
Without this MouseInputSource::getComponentUnderMouse() will report a
stale value after moving the cursor within a single peer using
MouseInputSource::setRawMousePosition().
2022-12-13 14:44:33 +01:00
reuk
da38c1ed2a
TextInputTarget: Improve IME support on Android 2022-12-07 13:12:02 +00:00
reuk
1f1d657260
TextInputTarget: Add underlining support for composing regions on macOS and iOS 2022-12-07 13:12:02 +00:00
reuk
f3b7b4ca2e
TextInputTarget: Improve input handling on macOS and iOS 2022-12-07 13:12:02 +00:00
reuk
06798ab897
TextInputTarget: Add password keyboard type 2022-12-07 13:12:02 +00:00
reuk
03a2b557ad
NSViewComponentPeer: Implement NSTextInputClient protocol 2022-12-07 13:12:02 +00:00
reuk
28f2157912
Convert ignoreUnused to [[maybe_unused]] 2022-12-01 11:41:50 +00:00
Tom Poole
6f629547d5 macOS: Handle unavailable Metal device 2022-11-30 11:19:15 +00:00
Tom Poole
b1b1bf37f1 iOS: Suppress a compiler warning 2022-11-23 09:15:38 +00:00
hogliux
b01d8c3619 iOS: Fix a crash when an AUv3 editor is dismissed while showing a native iOS file chooser 2022-11-03 12:06:31 +01:00
hogliux
4054e25052 Android: Added the ability to associate a particular file-extension to a mime-type at runtime 2022-11-02 20:27:20 +01:00
reuk
c666381ef9
UIViewComponentPeer: Maintain TextEditor cursor position during deleteBackward 2022-11-02 11:43:39 +00:00
reuk
df45aaeb7b
UIViewComponentPeer: Fix warning 2022-11-02 11:43:38 +00:00
reuk
8d6169fbf5
NSViewComponentPeer: Avoid processing key events directly during IME composition
This fixes an issue where e.g. pressing 'return' to select an item from
an IME list would directly insert a newline character, rather than
selecting the entry.
2022-11-02 11:42:33 +00:00
reuk
d563fcd7b4
NSViewComponentPeer: Use set rather than array for tracking key states 2022-11-02 11:42:33 +00:00
chroma
167911b9d2 UIViewComponentPeer: Disable autocomplete suggestions on text input views 2022-10-31 12:27:12 +00:00
reuk
978a00bed2
iOS: Updated Desktop::allowedOrientationsChanged to support new API in iOS 16 2022-10-19 14:28:44 +01:00
attila
e76603ae18 iOS: Add missing call to VBLank listeners 2022-10-19 11:23:08 +02:00
chroma
d3cff375be Thread: Introduce a new Thread backend
This is a breaking change - see BREAKING-CHANGES.txt
2022-10-18 11:49:47 +01:00
attila
1da9ccd36c Make it possible to attach Component updates to vblank events 2022-10-17 12:32:55 +02:00
reuk
59a47a4638
HWNDComponentPeer: Fix icon leaks
Co-authored-by: ValentynPavliuchenkoA <valentyn.pavliuchenko@avid.com>
2022-10-06 18:53:09 +01:00
reuk
b53ee602d4
X11: Use 32-bit colourmap in the case that a 24-bit colourmap is unavailable
When using RDP to access a Fedora machine running Gnome, the only
available colourmap is 32-bit. The old implementation caused GUI apps to
crash when they attempted to use a null colourmap pointer.
2022-09-29 12:05:42 +01:00