Previously, the UnitTestRunner example in the DemoRunner would fail on
any tests that included ScopedJuceInitialiser_GUI, as DeletedAtShutdown
objects would be destroyed too early.
We avoid modifying window controls in modal situations if possible.
Doing as much as [window setStyleMask: [window styleMask]]; for a
PopupMenu window will make it invisible on MacOS when the plugin is
hosted in an external subprocess.
This fixes a regression caused by
fb14118771.
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.
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.
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.
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.
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.
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