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

2940 commits

Author SHA1 Message Date
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
9cfbccca8e
Accessibility: Make createAccessibilityHandler public to allow calls from derived classes 2023-02-09 17:54:18 +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
reuk
0033e52179
VBlankAttachment: Make isEmpty const 2023-02-06 10:21:37 +00:00
attila
a662e5584b PopupMenu: Add explicit focus order to menu items
Without this VoiceOver will iterate over menu items left to right first,
and iteration order will be affected by whether the PopupMenu gets
broken up into multiple columns due to not enough screen space.
2023-02-03 16:11:11 +01: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
543b001e9c FileSearchPath: Allow working with paths that are not necessarily absolute
This allows paths that are prefixed with environment variables to behave
as expected. This is useful when scanning the default LV2 locations in
the AudioPluginHost on Windows.
2023-02-01 23:05:51 +00:00
reuk
db90a31813
TreeView: Fix getAllVisibleItems() when only the final row of the tree fits in the viewport
Fixes #1118
2023-01-25 17:12:34 +00: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
cf297c75c6
PopupMenu: Fix issue where PopupMenu would sometimes use the default rather than the parent look and feel
Previously, for the following snippet, the menu's LnF was incorrectly
being forced to the default LnF. The correct behaviour is to display the
menu using LnF v4. The menu doesn't have an explicit LnF set, so it
should use the LnF of its parent component.

    LookAndFeel::setDefaultLookAndFeel (&lookAndFeel_V1);
    setLookAndFeel (&lookAndFeel_V4);
    PopupMenu().showMenuAsync (PopupMenu::Options{}.withParentComponent (this));
2023-01-25 17:07:23 +00:00
Tom Poole
78f1baae08 Bump version number to 7.0.5 2023-01-25 11:37:31 +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
Tom Poole
715fa7e8dc Bump version number to 7.0.4 2023-01-05 14:36:45 +00:00
James Johnson
098262aa8a Add default return value for Component::exitModalState 2023-01-03 14:21:34 +00:00
attila
49cc7a0e09 Component: Fix potential bad access during mouse double click 2022-12-23 13:09:36 +00:00
Tom Poole
e669fb117e Docs: Fix some Doxygen warnings 2022-12-22 14:00:38 +00:00
Tom Poole
0cd2b5c2d8 Docs: Add a link to TooltipWindow from SettableTooltipClient 2022-12-22 10:43:34 +00:00
attila
a93d0a7ed0 Windows: Use timer to update VBlank registration for embedded HWNDComponentPeer 2022-12-20 18:02:50 +01:00
reuk
eee7200629 SidePanel: Fix shadow drawing artefact on hi-res screens 2022-12-14 18:59:44 +00: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
16b8cbf2b7
TableHeaderComponent: Correctly render column headers when graphics context is clipped 2022-12-14 11:12:31 +00:00
reuk
2e16de3501
Component: Avoid mouseListener use-after-free when deleting components in mouse callbacks 2022-12-14 11:12:31 +00:00
reuk
6296313d79
NSViewComponentPeer: Allow secondary windows to display correctly in fullscreen mode 2022-12-14 11:12:31 +00:00
attila
a115c99da4 MouseInputSource: Avoid wrong ComponentPeer association
When the mouse moves from one window to another, the mouseExit event
for the old window can occur after the mouseMove event for the new.
Until this commit this would cause the MouseInputSource to be
associated with the old window, and getComponentUnderMouse() would
incorrectly return a nullptr.
2022-12-13 14:44:33 +01: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
e5fc50908e
PopupMenu: Use correct LookAndFeel when computing parent component 2022-12-01 11:41:52 +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
306ed633c6 Bump version number to 7.0.3 2022-11-29 11:04:54 +00:00
Tom Poole
b1b1bf37f1 iOS: Suppress a compiler warning 2022-11-23 09:15:38 +00:00
attila
c1f3d30679 Component::MouseListenerList: Fix bad access 2022-11-07 13:08:19 +01: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
Fabian Renn-Giles
f2de0f12b0 GUI: Ensured that mouse listeners are still called even if the originating component is deleted in response to such an event 2022-11-02 22:52:49 +00:00