Commit Graph

1374 Commits

Author SHA1 Message Date
Robbert van der Helm 0e3b5af94e Fully implement IAudioPresentationLatency
Now we support all VST 3.1.0 interfaces.
2021-01-04 22:33:44 +01:00
Robbert van der Helm fe8211180f Add logging for IAudioPresentationLatency 2021-01-04 22:25:09 +01:00
Robbert van der Helm 85d90217bd Add message structs for IAudioPresentationLatency 2021-01-04 22:25:02 +01:00
Robbert van der Helm dcfbc34ba1 Add stubs for IAudioPresentationLatency 2021-01-04 22:17:19 +01:00
Robbert van der Helm 44f42d7e02 Add a proxy class for IAudioPresentationLatency 2021-01-04 22:06:05 +01:00
Robbert van der Helm 9983f81875 Fully implement IComponentHandler2 2021-01-04 21:56:14 +01:00
Robbert van der Helm 0ed9438ffb AAdd logging for the IComponentHandler2 messages 2021-01-04 21:49:22 +01:00
Robbert van der Helm d16cf4eb01 Add message structs for IComponentHandler2 2021-01-04 21:46:05 +01:00
Robbert van der Helm a997a7cd20 Add stubs for IComponentHandler2 2021-01-04 21:36:25 +01:00
Robbert van der Helm ffde7642f3 Add a proxy class for IComponentHandler2 2021-01-04 21:29:12 +01:00
Robbert van der Helm 5311c9ca6e Add logging for IHostApplication::createInstance 2021-01-04 16:50:19 +01:00
Robbert van der Helm 74c5728100 Get rid of old todos 2021-01-04 16:48:15 +01:00
Robbert van der Helm 4ec8b01bcc Completely run effEditIdle from a timer
Although it hasn't shown up, this will get rid of the possibility of
off-thread effEditIdle calls causing issues. And since we need some way
to run call this function while the event loop is running anyways, doing
it entirely from a timer similar to how hosts on Windows would do it
seems like the best solution.
2021-01-04 15:50:17 +01:00
Robbert van der Helm c554b9b4ab Use SW_MINIMIZE instead of SW_HIDE
Before deferring closing the editor. This still gets rid of that issue
in Wine's X11drv that would result in a double destroy, and it also gets
rid of a delay that would still occur in Carla.
2021-01-04 13:54:01 +01:00
Robbert van der Helm 4b461e44a1 [yabridgectl] Add a todo about orphans in subdirs 2021-01-04 13:49:06 +01:00
Robbert van der Helm 37c43970f3 Serialize the IMidiMapping support
I forgot this, so hosts would think plugins supported IMidiMapping when
they really didn't.
2021-01-04 00:24:31 +01:00
Robbert van der Helm 8924124abb Fully implement IParameterFinder
With this we're at VST 3.0.2 support.
2021-01-03 23:46:13 +01:00
Robbert van der Helm 52d4fe2f08 Add a wrapper struct around IPlugView for casts 2021-01-03 23:43:51 +01:00
Robbert van der Helm ace0d789d3 Add logging for the IParameterFinder messages 2021-01-03 23:27:57 +01:00
Robbert van der Helm 00632dc920 Add message structs for IParameterFinder 2021-01-03 23:24:14 +01:00
Robbert van der Helm 52de84f81f Add a proxy class for IParameterFinder 2021-01-03 23:18:21 +01:00
Robbert van der Helm 439c22c767 [yabridgectl] Consider subdirectories for orphans 2021-01-03 22:43:57 +01:00
Robbert van der Helm baf709d82e [yabridgectl] Include the original subdirectory 2021-01-03 22:42:50 +01:00
Robbert van der Helm 86a53a884d [yabridgectl] Find a plugin's subdirectory 2021-01-03 22:42:50 +01:00
Robbert van der Helm cd4752116a [yabridgectl] Split up Vst3Module
So we can add easily add additional fields later.
2021-01-03 21:40:36 +01:00
Robbert van der Helm 71eadff1ed Fix rare X11 error on editor closing
With the new deferred closing behaviour, closing the editor of Vital's
VST2 version would trigger an X11 error in Wine's X11drv. This doesn't
seem to happen with other plugins (or the VST3 version of Vital) and the
fact that this workaround even works is strange to say the least, but at
least it does work.
2021-01-03 16:49:23 +01:00
Robbert van der Helm fb6e5ab33f Fully implement IMidiMapping 2021-01-02 23:54:01 +01:00
Robbert van der Helm e980afddb4 Add stubs for IMidiMapping 2021-01-02 23:49:47 +01:00
Robbert van der Helm 792e6ed233 Add logging for the IMidiMapping messages 2021-01-02 23:43:41 +01:00
Robbert van der Helm 17d2d21bef Add request structs for IMidiMapping 2021-01-02 22:21:02 +01:00
Robbert van der Helm 315148d628 Add a proxy class for IMidiMapping 2021-01-02 22:13:54 +01:00
Robbert van der Helm 176e7fd1ae Add a comment on why we don't set a background 2021-01-02 19:42:37 +01:00
Robbert van der Helm 4a7b560972 Revert "Add a background brush to the window"
While this does get rid of artifacts, it can also add a brief moment
where the gray background becomes visible when the window reconfigures
which can look jarring.

This reverts commit 35c7138333.
2021-01-02 19:32:28 +01:00
Robbert van der Helm a8a0e325fe Fully implement INoteExpressionCOntroller 2021-01-02 18:40:34 +01:00
Robbert van der Helm 26c04cf246 Update winedbg GDB proxy support
The GDB proxy now seems to work again, but only in remote sessions.
2021-01-02 18:21:18 +01:00
Robbert van der Helm 1b47522de8 Fix YaPlugView::IsPlatformTypeSupported logging
Even though this branch will never be hit.
2021-01-02 17:16:27 +01:00
Robbert van der Helm a3770387cc Add logging for INoteExpressionController messages 2021-01-02 15:42:58 +01:00
Robbert van der Helm 8a4de7da53 Add stubs for INoteExpressionController 2021-01-02 15:27:55 +01:00
Robbert van der Helm c206d68b12 [yabridgectl] Allow permanently disabling checks 2021-01-02 14:32:54 +01:00
Robbert van der Helm ef540f354c [yabridgectl] Add an option to undo setting --path 2021-01-02 14:09:59 +01:00
Robbert van der Helm 3c99d43247 Add message structs for INoteExpressionController 2021-01-01 23:37:43 +01:00
Robbert van der Helm 18bfc5cc54 Fix unity size argument in the CI build 2021-01-01 22:55:35 +01:00
Robbert van der Helm 872a6aa304 Don't enable unity builds by default
But do suggest enabling them in the readme and enable them on the CI.
Having them enabled by default breaks clangd/ccls, which doesn't sound
like a great idea.

https://github.com/mesonbuild/meson/issues/8146
2021-01-01 22:53:08 +01:00
Robbert van der Helm 7c133e18da Enable unity builds by default 2021-01-01 22:11:30 +01:00
Robbert van der Helm cee0627449 Patch the VST3 module loading for Unity builds
The narrow overload gets picked here by default.
2021-01-01 21:57:21 +01:00
Robbert van der Helm c6276d03a1 Add a proxy class for INoteExpressionController 2021-01-01 21:37:38 +01:00
Robbert van der Helm 34f8d3b1d2 Update the copyright notices for 2021 2021-01-01 18:54:02 +01:00
Robbert van der Helm 5f8926f8ae Defer Win32 window closing
This gets rid of all potential delays when closing windows.
2020-12-31 14:18:26 +01:00
Robbert van der Helm fa0753f520 Use atomic fetch-and-add for unique window classes 2020-12-31 14:12:14 +01:00
Robbert van der Helm c3c0f96585 Get rid of CS_HREDRAW and CS_VREDRAW
This causes the window to black out to fully redraw even when the
plugin's editor window can just draw over the new parts.
2020-12-31 13:31:44 +01:00