View Single Post
Old 07-22-2017, 12:58 AM   #59
Human being with feelings
Join Date: Feb 2014
Posts: 540

I've got the sforzando vst working with drag and drop but only with the standalone window LinVst version and not the embedded window (reparented window) LinVst version.

"XDND drag-and-drop does not work with reparented external windows, since messages are exchanged with the toplevel window only. This is done for performance reasons. While it is cheap to get the window under the mouse pointer, it is very expensive to get a window under another window. Unfortunately, this is required quite often when dragging objects around, since the pointer may overlap the drag icon.

Solving the drag-and-drop problem, however, is quite easy, since the XDND protocol was carefully designed in a way that makes it possible to support embedded windows. Basically, the embedder has to operate as drag-and-drop proxy for the client. Any XDND messages like XdndEnter, Xdnd,Leave, etc. simply have to be passed through. A toolkit's XDND implementation has to take this situation in consideration."
osxmidi is offline   Reply With Quote