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

3072 commits

Author SHA1 Message Date
attila
fb14118771 MacOS: Disable window controls for windows created by JUCE when a Component is modal
The change does not affect plugin windows, which are created by the
host.
2024-01-17 18:54:37 +01:00
attila
d810a168eb Use the new TimedCallback in the codebase 2024-01-17 15:03:48 +01:00
attila
31dfb05ea3 Toolbar: Change the background colour of CustomisationDialog, make it configurable 2024-01-10 15:45:05 +01:00
reuk
5ee9d24e36
WindowsHooks: Use appropriate dpi awareness when forwarding mouse wheel messages 2024-01-08 12:10:32 +00:00
reuk
810e348ff7
XWindowSystem: Specify mouse coordinates for resize in terms of the root window rather than the application window 2024-01-08 12:10:31 +00:00
reuk
1e7b91b4d2
FileChooser: Avoid potential issue when viewDidDismiss and file selection callbacks are interleaved
viewDidDisappear may be called when a file is successfully selected.
presentationControllerDidDismiss is only called when the controller is
dismissed manually by the user, e.g. by tapping outside the sheet, or by
dragging it away.

Checking for sheet dismissal is necessary in iOS 15, but not in iOS 17.
In iOS 17, tapping outside the file chooser causes a callback to
documentPickerWasCancelled instead.
2024-01-03 17:42:01 +00:00
attila
7650c85ba5 Avoid focus changes due to mouse clicks for Components with setMouseClickGrabsKeyboardFocus (false)
Even if this focus change is being propagated up by a child Component.
2024-01-02 15:10:02 +01:00
attila
a8c114b570 Android: Widen ContentSharer permissions to work with Google Drive
While Google Drive seemingly isn't trying to access URI's that aren't an
exact match, without the presence of FLAG_GRANT_PREFIX_URI_PERMISSION,
sharing files with Google Drive will silently fail.
2023-12-10 18:41:24 +01:00
reuk
8aa9b01264
KeyPress: Allow isKeyDown to handle dual-symbol keys like =/+, ;/: on Windows 2023-12-07 15:43:22 +00:00
attila
89c2536a77 Move NativeScaleFactorNotifier from audio_processors to gui_basics 2023-12-05 21:18:44 +01:00
Attila Szarvas
6be90eeeaa Improve SVG text parsing capabilities
Prior to this change all <tspan> elements without x, and y attributes would
just inherit the parent elements such attributes and be placed in the same
location. This didn't respect whether these attributes were consumed already
by the parent.

Having multiple x and y elements, or having a different number of x and y
elements was also not handled in line with the rules for SVG.
2023-12-05 18:52:20 +00:00
reuk
903c77b977
PopupMenu: Add accessor for top-level target component to Options class
This allows the LookAndFeel of submenus to query the target component
used for the top-level menu. getTargetComponent() isn't suitable for
this because the target component is set to null for submenus, and this
behaviour can't be changed without potentially breaking code that relies
on the current behaviour.
2023-11-29 13:50:39 +00:00
Tom Poole
61aa1fc4ab Bump version number to 7.0.9 2023-11-20 14:03:35 +00:00
attila
387eea5f51 MacOS: Accessibility: Fix returning ignored native element in accessibilityChildren
This fixes a bug, where VoiceOver would interact with the InnerNSView in
the AudioPluginHost. Instead the focus now jumps from the minimise
button directly to the plugin's first accessible element.

On MacOS the rule is: when returning accessibilityChildren an ignored
child must be replaced with its own children. When returning the
accessibilityParent, an ignored element must be replaced with its own
parent.
2023-11-08 16:42:59 +01:00
attila
b800890ec6 Android: Fix ContentSharer crash on Android 14 2023-11-03 09:43:07 +00:00
reuk
65b6c85594 ConcertinaPanel: Move call that was mistakenly added to move constructor 2023-11-03 08:54:16 +00:00
reuk
884bb756c8
ConcertinaPanel: Avoid dangling mouse listener when reusing header components 2023-11-02 12:08:02 +00:00
Anthony Nicholls
c5fbeb859d Component: Improve the accuracy of the relative mouse position 2023-10-31 12:47:39 +00:00
reuk
94ee60041f
Enumerate: Replace some non-ranged loops 2023-10-31 10:57:43 +00:00
Anthony Nicholls
3f91c8782b macOS: Move set dock icon to juce_core 2023-10-25 13:53:35 +01:00
reuk
7626f86607
PopupMenu: Only display inside safe user area 2023-10-23 16:33:18 +01:00
Tom Poole
c474cb2469 Docs: Fix some missing Doxygen tags 2023-10-20 11:22:47 +01:00
reuk
384ddee376
macOS: Correctly populate display safeAreaInsets on macOS 2023-10-19 11:32:31 +01:00
Tom Poole
45494e34d5 Bump version number to 7.0.8 2023-10-19 09:06:32 +01:00
attila
8f2a2ddeea MacOS: Accessibility: Fix ToggleButton state reporting
The accessibilityValue method of the AccessibilityCheckBox and
AccessibilityRadioButton protocols is required to return a
boolean valued NSNumber.
2023-10-13 15:47:39 +02:00
Tom Poole
dd90e18468 Fix a compiler warning 2023-10-13 09:40:50 +01:00
reuk
86d496d424
WindowsHooks: Attempt to fix keyboard issues for plugin clients
This patch should resolve an issue introduced in
0ab30555fc where arrow keys and other
directional keys (home, end, page up, page down) stopped working as
expected.

With this patch in place,
- IME input in plugins should work correctly, including for languages
  with a selection palette (Japanese) and languages where multiple
  keypresses combine to a single character (Korean).
- Keyboard shortcuts should work (cut, copy, paste)
- Directional keys should work
2023-10-11 15:57:46 +01:00
Tom Poole
6bf9bb9a2e Add final specifiers in implementation files 2023-10-10 16:12:38 +01:00
attila
aee5a3a45e SVGParser: Add support for multiple coords per text element 2023-10-10 16:43:12 +02:00
attila
365d87ae11 Drawable: Fix transformations by recalculating them on bounds change 2023-10-10 16:43:12 +02:00
attila
6c3ba087f2 DrawableText: Fix applying transformation in getOutlineAsPath() 2023-10-09 17:32:35 +02:00
Anthony Nicholls
158220ddfa Formatting: Use nested namespace definitions 2023-10-09 14:49:18 +01:00
Anthony Nicholls
90c458d92e Includes: Move some miscellaneous includes into module header and source files 2023-10-09 14:49:18 +01:00
reuk
0ab30555fc
WindowsHooks: Avoid double-pasting issue in FL studio 2023-10-03 11:08:16 +01:00
Tom Poole
4153d59e39 Formatting 2023-10-02 15:42:20 +01:00
Tom Poole
ff0cb4ad5b Use NullCheckedInvocation in more places 2023-10-02 13:40:10 +01:00
reuk
160f4a88b1
NSViewComponentPeer: Explicitly set clipsToBounds
The default value of this property changed in Sonoma, but we still want
to use the old default.
2023-09-27 11:13:19 +01:00
Tom Poole
2fb19ffd8f Fix some LLVM 17 compiler warnings 2023-09-25 11:21:11 +01:00
Anthony Nicholls
59d91cff1e Xcode15: Allow older llvm versions when compiling with Xcode 15 2023-09-22 15:26:51 +01:00
Tom Poole
7d45d498b9 Removed some superfluous consts from definitions 2023-09-20 16:31:10 +01:00
Tom Poole
9b041f3d74 Add a base clang-tidy configuration 2023-09-18 11:24:19 +01:00
Tom Poole
bd8233f7f8 Docs: Fix a typo 2023-09-04 11:20:39 +01:00
Tom Poole
82f1fd57a4 Fix some compiler warnings 2023-08-29 12:59:09 +01:00
Tom Poole
b769982bb5 Bump version number to 7.0.7 2023-08-23 09:06:58 +01:00
attila
e4c87b766b Fix crash occurring in VirtualDesktopWatcher during desktop scaling changes 2023-08-14 12:28:45 +02:00
reuk
f0aacca62c
macOS: Fix deprecations in macOS 14.0 2023-08-09 16:48:01 +01:00
reuk
a4aa7392d8
UIViewComponentPeer: Fix stalled rendering when JUCE_COREGRAPHICS_RENDER_WITH_MULTIPLE_PAINT_CALLS is enabled 2023-08-05 17:02:40 +01:00
Tom Poole
d5cb08e60e Bump version number to 7.0.6 2023-08-03 10:58:48 +01:00
luzpaz
3c9645fa60 Docs: Fix typos 2023-08-02 11:20:44 +01:00
reuk
e4b8569b12
TextEditor: Avoid giving away keyboard focus unconditionally in destructor
While improving Android IME support (da38c1ed), text editor destructors
were updated to explicitly pass keyboard focus elsewhere.
As far as I remember, the change was intended to prevent the text input
system from trying to send input events to components while they were
being destroyed, in which case the TextInputTarget and Component bases
may be 'valid', but the data members referenced by the TextInputTarget
implementation may have been destroyed.

The motivation for removing these lines is that giving away focus and
sending a focus event can cause all components to become unfocused. This
is problematic in the case of slider text editors - pressing 'enter'
will cause the TextEditor to be destroyed, but the parent component will
fail to gain focus, so pressing 'tab' will not have any effect.
2023-07-31 19:36:32 +01:00