Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from juce-framework:master #10

Merged
merged 91 commits into from
Feb 13, 2024
Merged

Conversation

pull[bot]
Copy link

@pull pull bot commented Feb 13, 2024

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

Anthony-Nicholls and others added 30 commits November 21, 2023 13:31
When dragging-and-dropping a plugin into the plugin host, it was
possible that the subprocess scanner could fail to send a response.
This would cause the superprocess to freeze, waiting for a reply.

With this change in place, the subprocess will always send a response
after scanning on the main thread.
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.
…reating one

- Also refactored internals to use weak/shared pointers
This change affects the DatagramSocket and StreamingSocket classes.
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.
…n using WebView2

This fixes a bug where moving a window between displays with different
scaling settings makes the embedded WebView misaligned.
Anthony-Nicholls and others added 28 commits January 15, 2024 17:17
…allback

This fixes an edge case in which if listeners are both removed and added during a callback the added listener(s) may be called during the same iteration
This also adds missing KHRONOS_APIENTRY qualifications to the debug
callback type, which fixes potential crashes when running debug Win32
builds.
The new class hold a list of ChildProcesses and periodically checks
their return value until they report termination. On Linux this check
is necessary to avoid leaving zombie processes behind.
…eave zombies

This change also avoids the AudioPluginHost leaving zombie child
processes behind.
…ponent is modal

The change does not affect plugin windows, which are created by the
host.
The old API only allowed cancelling property "get" inquiries and
subscription updates. However, there are use-cases for cancelling other
requests too. e.g. switching between views in a JUCE app might mean that
it's no longer necessary to subscribe to a particular property.

Cancelling subscriptions ends up being quite involved. Different
handling is needed depending on whether the subscription is cancelled
before or after the responder replies to the initial request.
In addition, the responder may ask the initiator to retry a subscription
begin request.
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
fb14118.
…sinc interpolator

Users reported this caused missed deadlines and performance penalties
@pull pull bot added the ⤵️ pull label Feb 13, 2024
@pull pull bot merged commit a8ae6ed into sysfce2:master Feb 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants