Commit Graph

599 Commits

Author SHA1 Message Date
Robbert van der Helm ce29e5e990 Update the targetted VST3 SDK to version 3.7.4 2021-12-20 23:15:40 +01:00
Robbert van der Helm 18862279e1 Mention the recent dependency handling changes 2021-12-19 22:47:38 +01:00
Robbert van der Helm d48dbe71da Redundantly limit number of drag-and-drop formats
As reported in #149, the DrumCore 3 plugin would segfault when trying to
drag files from it. This happened because the plugin presumably
underflows somewhere and then reports that it supports 4294967282
different drag-and-drop formats, even though yabridge asked for a
maximum of 16.
2021-12-16 01:52:37 +01:00
Robbert van der Helm e5c27e833b Fix Wine version detection in build config
The non-greedy match would obviously not work with versions like `Wine
6.23`. Just matching `MAJOR.MINOR` is sufficient anyways.
2021-12-07 01:07:04 +01:00
Robbert van der Helm 35244d2c7f Support Wine 6.23's fixed winedbg arg handling
I was about to rebase the patch I've been resubmitting to Wine that
fixed this when I noticed that
https://github.com/wine-mirror/wine/commit/94ca4be2a62cdb05adaee524084875b04b283afb
now does the same thing.
2021-12-07 00:59:07 +01:00
Robbert van der Helm c054398965 Increase Win32 message limit for JUCE plugins
They aggressively use the message loop when parts of a plugin's UI
change, sometimes sending as many is 2300 events at once. The old 20
messages per tick limit would cause severe slowdowns in this case.
2021-11-30 03:48:08 +01:00
Robbert van der Helm 75c64e6be8 Bump version to 3.7.0 2021-11-21 16:04:49 +01:00
Robbert van der Helm 20dda7e023 Reword changelog 2021-11-21 15:13:02 +01:00
Robbert van der Helm aa35be3cc0 Update tomlplusplus to slightly after 2.5.0
This issue otherwise breaks compilation under Meson 0.60.0:

https://github.com/marzer/tomlplusplus/issues/121
2021-11-12 12:15:23 +01:00
Robbert van der Helm 52d0232c91 Update tomlplusplus wrap to 2.5.0 2021-11-11 03:40:12 +01:00
Robbert van der Helm fe1c2e3848 Update bitsery wrap to 5.2.2 and patch_directory
And switch to wrap-git.
2021-11-11 03:40:12 +01:00
Robbert van der Helm 43c66b6dc3 Update function2 wrap to 4.2.0 and patch_directory
And switch to wrap-git.
2021-11-11 03:26:56 +01:00
Robbert van der Helm 5b3210eed6 Inhibit event loop during VST3 offline processing
This prevents T-RackS 5 from causing the export in Bitwig Studio 4.1.0
beta 2 to freeze.
2021-11-10 21:29:40 +01:00
Robbert van der Helm 5be149cb52 Prevent wineg++ from including the SAL headers
This otherwise breaks compilation under Wine 6.20:

https://bugs.winehq.org/show_bug.cgi?id=51919
2021-10-23 20:21:10 +02:00
Robbert van der Helm 1b662c07a7 Clean up group host socket endpoint files
Apparently we just left these behind. Now all yabridge related files
should be gone from the temporary directories if yabridge exits cleanly.
2021-10-16 01:58:15 +02:00
Robbert van der Helm 3257b9c32e Add an environment variable for custom temp dirs
This would be useful if you need to do some elaborate namespacing setup
and want all sockets and other temporary files in a single directory
instead of in `${XDG_RUNTIME_DIR:/tmp}`.

This resolves #139.
2021-10-16 01:41:48 +02:00
Robbert van der Helm e79d1ec03a Bump to version 3.6.0 2021-10-15 10:34:31 +02:00
Robbert van der Helm b792a9006a Reword the changelog once more 2021-10-15 10:33:38 +02:00
Robbert van der Helm 15e6e60010 Remove note about editor_double_embed from readme 2021-10-15 10:20:08 +02:00
Robbert van der Helm e5e69bfc6f Reword the changelog 2021-10-14 14:57:51 +02:00
Robbert van der Helm c9240cdf1f [yabridgectl] Mention MSRV bump 2021-10-14 12:48:07 +02:00
Robbert van der Helm 5151107a84 [yabridgectl] Accept relative paths in remove ops
This is a bit of a mess (which is also why I kept procrastinating on
this), since we also need to keep symlinks, trailing slashes, and weird
unnormalized paths into account.
2021-10-12 19:10:31 +02:00
Robbert van der Helm 5aa25109b8 Work around Boost.Process invalid locale bug/crash
This should not be causing any issues, but it seems like some people
skip the locale setup step in the Arch installation guide and then end
up with a distro without any locales, with invalid locales, or with a
non-generated locale. glibc and libstd++ fall back to the C locale when
this happens, but Boost.Process triggers one of the edge cases where
this doesn't happen. https://github.com/boostorg/process/pull/179 fixes
this in Boost.Process, but it will be a while until this is in every
distro's copy of Boost.

https://svn.boost.org/trac10/changeset/72855
2021-09-26 19:25:35 +02:00
Robbert van der Helm 3dd5859799 Always print version information in plugin hosts
When the plugin host applications are invoked without arguments. Seems a
bit weird when they only print this when invoked with arguments.
2021-09-26 18:20:20 +02:00
Robbert van der Helm 0c9c4686f1 Use the small buffer optimization for VST3 SysEx
We apparently didn't do that yet. SysEx should be super rare (outside of
octave switching on Arturia keyboards), but there's still no reason not
to do it.
2021-09-23 14:29:12 +02:00
Robbert van der Helm 7760c4bb6c Show desktop notification for low RLIMIT_RTTIME
For the same reason as the last commit, since people otherwise just miss
this.
2021-09-21 15:40:32 +02:00
Robbert van der Helm f26a2a2689 Set VST2 SR and block sizes from main thread
This apparently fixes New Sonic Arts' Vice plugin freezing while
loading. Hopefully this doesn't cause issues with other plugins. Spotted
in https://www.kvraudio.com/forum/viewtopic.php?p=8217647#p8217647.
2021-09-21 14:11:15 +02:00
Robbert van der Helm 5b08823f83 Rename issues section to Known issues and fixes
Probably makes it a bit clearer that this section nowadays includes a
bunch of fixes and workarounds for these issues.
2021-08-25 13:03:42 +02:00
Robbert van der Helm a1cbf23f66 Add a changelog entry for the XDND warmup phase 2021-08-22 16:46:06 +02:00
Robbert van der Helm 64f0cbcd41 Fix property reply errors being coerced to 0
During a refactor this changed from a boolean to an option, guess I
missed this.
2021-08-22 16:41:40 +02:00
Robbert van der Helm c12c1459bb Fix drag-and-drop skipping the first tick
This check is of course not supposed to be here.
2021-08-22 15:56:23 +02:00
Robbert van der Helm 5613248cda Gate the new resizing behavior behind new option
This interferes with resizing plugins using resize handles, and since it
only helps with two buggy plugins this seems like the best solution
here.
2021-08-16 22:39:13 +02:00
Robbert van der Helm b84aa18ecf Only reset coordinates when resizing
This was the original idea. I though that to be extra safe, maybe we can
do this all the time. And while that does work fine, most of the time,
it does cause a lot of other fun issues especially when plugins fully
redraw themselves that way.
2021-08-16 21:31:57 +02:00
Robbert van der Helm aee6e9a4a7 Add a todo regarding removing editor_double_embed 2021-08-16 21:24:17 +02:00
Robbert van der Helm cc9226a3fc Remove editor_double_embed
It's no longer needed after the `fix_local_coordinates()` change from a
fa12c64866a8b79e862bc5db4c4b092a4b762689.
2021-08-16 21:21:57 +02:00
Robbert van der Helm d46f7882bd Reposition to (0, 0) while fixing coordinates
The goal is to have the window be at (0, 0), while Wine's X11 event
layer thinks it is at the actual screen coordinates. This is needed to
prevent drawing issues with buggy plugins that rely on absolute screen
coordinates to draw their GUI.
2021-08-16 21:21:57 +02:00
Robbert van der Helm e6f0fe16d8 Target VST3 SDK version 3.7.3 2021-08-10 17:14:48 +02:00
Robbert van der Helm 63975115d2 Bump to version 3.5.2 2021-08-08 15:49:17 +02:00
Robbert van der Helm 54a0e6be87 Fix dates in changelog 2021-08-08 15:43:29 +02:00
Robbert van der Helm a020d97863 Reword changelog 2021-08-08 14:23:04 +02:00
Robbert van der Helm 9160de6483 Implement VST2 SysEx events
Apparently these _are_ actually used. Sometimes.
2021-08-04 21:40:09 +02:00
Robbert van der Helm 2e6732c0e2 Fix regression for VST3 editor initial sizing
We accidentally reverted a little bit too much code in
762e622416. This didn't appear any sooner
because plugins are supposed to call `IPlugFrame::resizeView()` during
`IPlugView::attached()`, so this only affects plugins that don't confirm
to the spec.
2021-08-02 14:47:21 +02:00
Robbert van der Helm 1db6e853da Bump to version 3.5.1 2021-07-31 21:29:48 +02:00
Robbert van der Helm baabc45793 Fix wrong date in old changelog entry 2021-07-31 21:29:22 +02:00
Robbert van der Helm aff0e38e1f Reword changelog 2021-07-31 21:26:28 +02:00
Robbert van der Helm e430c5f015 Directly focus wine_window while holding Shift
This lets you type spaces in Bitwig, and it also allows you to interact
with the settings/license popup dialogs in Voxengo plugins in a normal
way.
2021-07-31 16:31:53 +02:00
Robbert van der Helm bf59e5e8ce Also grab keyboard focus on parent window focus
This allows you to directly focus plugin GUIs that are open in the
background in REAPER.
2021-07-31 16:14:02 +02:00
Robbert van der Helm c98a9519fe Handle X11 events within the Win32 event loop
This unifies event handling and it allows X11 events to still be
processed even when the event loop is blocked.
2021-07-31 15:19:44 +02:00
Robbert van der Helm 2f0b88d5c8 Reword workaround revert changelog entry 2021-07-29 14:19:28 +02:00
Robbert van der Helm 6e684452fe Also mention Ardour being affected 2021-07-29 13:59:55 +02:00