Robbert van der Helm
2ea480a09d
Mention why dropdowns block the GUI and a solution
2020-03-27 18:35:48 +01:00
Robbert van der Helm
d5e125e6b3
Describe the way events are handled in more detail
2020-03-27 17:01:49 +01:00
Robbert van der Helm
b23637232b
Add a list of issues that still need fixing
2020-03-26 23:25:13 +01:00
Robbert van der Helm
cc52c87f34
Properly handle effGet{Input,Output}Properties
...
Apparently the plugin needs the actual contents of the struct for this
to work.
2020-03-26 16:24:49 +01:00
Robbert van der Helm
0d7a5f10cd
Change style of break statements with a block
2020-03-26 15:59:39 +01:00
Robbert van der Helm
a85e936059
Reverse engineer IO related opcodes
2020-03-26 15:58:15 +01:00
Robbert van der Helm
a3d8c6cb0a
Get rid of some old experiments
...
Forgot to remove these in the last commit.
2020-03-25 23:11:24 +01:00
Robbert van der Helm
161e102113
Properly send XEmbed messages
...
The good news is that Wine now understands that it's an XEmbed message.
The bad news is that everything's now broken.
2020-03-24 18:50:24 +01:00
Robbert van der Helm
096e36dfdc
Handle all dispatch calls from the main thread
...
Some plugins apparently assume that all events (or at least some
specific ones) are sent from the thread it was created on and will
segfault otherwise. The is the case for Melda plugins.
2020-03-23 23:41:00 +01:00
Robbert van der Helm
5552fc3009
Use the provided plugin instance
...
Some plugins call `audioMasterIOChanged` during their initialization
when this is still a null pointer.
2020-03-23 23:06:12 +01:00
Robbert van der Helm
dc08d8032d
Resize windows when needed
2020-03-23 22:57:56 +01:00
Robbert van der Helm
d2be82285a
Make sure messages can't get out of order
2020-03-23 22:33:28 +01:00
Robbert van der Helm
5d1051a00c
Fix plugins not updating with dropdowns
2020-03-23 22:19:49 +01:00
Robbert van der Helm
c046f9fe7b
Implement the rest of the XEmbed protocol
2020-03-21 17:24:22 +01:00
Robbert van der Helm
2e44de6f49
Add a function for sending XEMBED messages
2020-03-21 16:32:39 +01:00
Robbert van der Helm
50f26d1238
Implement part of the XEmbed protocol
2020-03-20 22:56:04 +01:00
Robbert van der Helm
4ae1f03e4c
Simplify GUI event handling
2020-03-19 21:37:16 +01:00
Robbert van der Helm
f1f7523248
Make the GUI embedding work
...
There's still a few things that need fixing.
2020-03-19 17:29:30 +01:00
Robbert van der Helm
eebfceff56
Implement the rest of the GUI events
...
The GUI is still not updating though.
2020-03-19 00:58:03 +01:00
Robbert van der Helm
168568ed51
Move the wrapper around the dispatch function
2020-03-18 23:51:53 +01:00
Robbert van der Helm
ede14ece3b
Add the start of reparenting the editor windows
2020-03-17 23:04:09 +01:00
Robbert van der Helm
f3bf7879c6
Finish renaming win32-editor.h
2020-03-17 22:13:30 +01:00
Robbert van der Helm
f43c0bc78b
Fix xcb include
2020-03-17 22:11:57 +01:00
Robbert van der Helm
70ebb5d243
Replace Xlib with xcb
2020-03-17 22:08:44 +01:00
Robbert van der Helm
e2d8c0883f
Rename win32-editor.h -> editor.h
...
Since I no longer intent to do separate X11 handling on the plugin side
2020-03-17 21:37:53 +01:00
Robbert van der Helm
1c17513936
Move all window handling to the Wine host side
2020-03-17 21:31:19 +01:00
Robbert van der Helm
d0a86887d3
Explicitely handle editor opening failures
2020-03-17 20:54:49 +01:00
Robbert van der Helm
e7e1b26455
Add the base for GUI handling
...
Still need to embed the opened window into the window provided by the
host.
2020-03-17 01:51:02 +01:00
Robbert van der Helm
44a953c2d2
Change argument order for event handling functions
2020-03-17 00:53:09 +01:00
Robbert van der Helm
cdc2402bc8
Add a wrapper around the Win32 window API
2020-03-17 00:45:57 +01:00
Robbert van der Helm
c135fce3a6
Remove todo about multiout and sidechain inputs
...
Apparently this is the correct behavior. SOme other VST bridges simply
did not properly support this.
2020-03-16 15:51:03 +01:00
Robbert van der Helm
a01319e507
Allow plugins to crash during shutdown
...
Sounds weird, but there are a small number of plugins that crash during
shutdown because they call functions not yet supported by Wine. Since
the host will have already saved all state before calling `effClose`
this should not cause any problems.
2020-03-16 14:14:55 +01:00
Robbert van der Helm
7172a42c67
Prevent data races in host callbacks
2020-03-16 13:58:49 +01:00
Robbert van der Helm
23ad05aba1
Better document the use-winedbg option
2020-03-16 13:45:00 +01:00
Robbert van der Helm
3b91e23fda
Minor corrections in the readme
2020-03-15 17:44:07 +01:00
Robbert van der Helm
1066e0c5e4
Mention that all plugins somehow support multiout
2020-03-15 17:42:12 +01:00
Robbert van der Helm
10c517401c
Stop flood of empty lines on plugin crash
2020-03-15 17:26:01 +01:00
Robbert van der Helm
138fa9eb31
Add winedbg support behind a feature flag
...
I had something similar saved as a stash since I did not want to make
things more complicated by adding feature flags, but this should be
fine.
2020-03-15 16:30:25 +01:00
Robbert van der Helm
454cef76e7
Add todo regarding concurrency
2020-03-14 18:29:49 +01:00
Robbert van der Helm
f2597ca0b9
Prevent race conditions from simultaneous dispatch calls
2020-03-14 18:11:35 +01:00
Robbert van der Helm
5f584323c2
Monkey patch async pipes foor Boost 1.72
...
This is an simple workaround and it's much more practical than having to
downgrade Boost since that breaks any application that links to it.
2020-03-14 16:49:38 +01:00
Robbert van der Helm
37b0e72d4a
Increase the number of permitted midi events
2020-03-12 23:17:42 +01:00
Robbert van der Helm
bb6ffe4891
Fix crashes on startup in Bitwig's bridge
2020-03-12 23:17:14 +01:00
Robbert van der Helm
9554d7eebd
Mention that MPE does work!
2020-03-12 22:53:42 +01:00
Robbert van der Helm
a14d915ee7
Better describe Wine process shutdown
2020-03-12 21:22:37 +01:00
Robbert van der Helm
bce45a244d
Mention a possible way to debug the host
2020-03-12 20:58:51 +01:00
Robbert van der Helm
d5d3164ae3
Mention more things to check in the TODOs
2020-03-12 20:24:12 +01:00
Robbert van der Helm
a21af802b3
Mention that the GUI related opcodes are disabled
2020-03-12 17:14:43 +01:00
Robbert van der Helm
3eb5e3de02
Mention how to attach a debugger
2020-03-12 17:01:25 +01:00
Robbert van der Helm
28b3800fb4
Force-stop the io_context manually
...
Apparently this will cause the io_context to just abandon all of its
work and not throw any exceptions.
2020-03-11 21:48:53 +01:00