Drag and Drop not working under VST in Linux

Hi,

I don’t know why, but on windows drag and drop works fine in Standalone-Mode or in a VST.
But under linux, I can’t get drag and drop to work in VST3 - not in the AudioPluginHost or in Waveform 11. Strangely in Standalone under Linux drag and drop is working again under linux. Drag and drop is supported by VST3 under linux right? What could be the issue here?

Thanks,

best regards,

equinox

Maybe related:

Mh yes seems related, but the provided patch there linked doesn’t exist anymore :frowning:
I tried to apply the changes from the attached diff-file, but the X11 JUCE Code seems to have changed a lot since this patch was written.

@ed95 Do you have any idea on this?

Help would be very much appreciated,

friendly regards,

equinox

Yeah, DnD in Linux still a problem.

Hi equinox,

I’m looking into this and trying to understand the cause of the issue.

What Linux distro and version are you using? If the problem is related to Wayland, we may not have an easy fix for that.

Are you dropping files onto the plugin window or elements between multiple plugin window instances?

Hi attila,
thanks for putting this on the list.
I’m using ubuntu 20.04 LTS, which should be one of the most common Linux-distro out there. I’m dropping the elements to one plugin-window instance. As I said, in the standart juce-standalone-window things work fine, but inside Waveform or also the AudioPluginHost the plugin is not responding to the drag-starting.

Friendly regards,

equinox

Yeah, it was not clear. I mean X11 on Linux. All of commercial plugins I have doesn’t support DnD: TAL, Tracktion while they should.

@equinox could you provide an example of plugin you have problem with?

DnD with X11<->Wayland is known for unsupported at this time.

I took a closer look and experimented with an adaptation of scotchi’s patch [1] to develop.

Using the XdndProxy it’s possible to hijack the DND messages from the plugin window’s parent but I don’t think that’s something we should do in general

  • right now it only works in Bitwig Studio, not even in Waveform (Tracktion) anymore
  • the plugin window’s parent is created by the DAW, and hijacking DND calls from it may be causing problems down the line

The reason this isn’t very reliable is that it’s not even sure that the plugin window’s parent is receiving the DND messages. It could be the parent’s parent, or like in the case of AudioPluginHost’s, a window in which the plugin window’s parent is embedded.

Since this window hierarchy is managed by the DAWs, I don’t see a way to cleanly and reliably solve the Linux DND problem entirely from the plugin side.

[1] Bug + Patch: Implements drag and drop for plugin windows on Linux

yabridge has DnD implementation and it works for JUCE Windows plugin in Wine bridged mode yabridge/xdnd-proxy.cpp at master · robbert-vdh/yabridge · GitHub

not sure if it applicable here

Hi @attila
thanks for your research.
Actually I would need it for Tracktion Waveform, do you know if there is anyway to get DnD working for Waveform on Linux?

Thanks,

best equinox

Also not working for Fedora 35 Linux.

Sadly I don’t have anything yet.

KottVV: Thanks for the input, I will try to install yabridge and see if it can solve this problem, maybe there is a way to do this after all.

Robbert is very open for helping. You can find him at Discord channels Yabridge and TAP

I have played around with yabridge using a simple JUCE plugin built on Windows and loaded on Ubuntu 20.04.

Unfortunately I couldn’t make drag and drop work in either AudioPluginHost, Waveform or Reaper. And that is with the editor_force_dnd option. What this tells me is that at this point

  • we only know of creative solutions to the problem,
  • that may interfere with the DAW’s behavior, hence the need for optional enablement,
  • and are prone to breaking if the DAW is updated.

That is not to say the situation couldn’t be improved to work in at least some of the hosts, but right now I don’t see a quick fix that could satisfactorily address this.

1 Like

It works for me with drag and drop a MIDI file from plugin to DAW host or filemanager.
I tested with Waveform and Carla as hosts and TAL-Bassline and MT-PowerDrumKit.

Though from filemanager/DAW to plugin it’s not working, yes.

1 Like