As a result of my last blog on QtQuick and DnD I was contacted by both Sebas and Marco. Both are active in the KDE project and face the same issues as I do. Apparently, the Plasma team are also working on DnD in QtQuick. Their approach is based around DragArea and DropArea, written in C++ and handles full X11 DnD, i.e. between processes. Marco summed it up nicely in his mail to me.
…in kde-runtime/plasma/
declarativeimports/ draganddrop/ …is imported as a c++ plugin and depends only from qt (started its life as a 3rd party plugin written by Gregory Schlomoff)…
My solution (will polish the code for release Anytime Soon) is written in QML/JavaScript and only works within a single process, e.g. for moving items between lists, etc.
KDE has been about extending and completing the Qt software stack to make it easier to build Qt-based software. In this process, they are working on QtQuick as well as Qt. A tips for anyone (including me) looking for missing pieces is to look in the KDE TechBase.
Cheers for the interesting comparison :)
Nice! I’m happy to see that my code was the foundation for KDE’s solution.
The original code is here: https://bitbucket.org/gregschlom/qml-drag-drop/, if anyone is looking for it, but I believe the KDE version probably is more mature. My code started mostly as a proof-of-concept.
Cheers to the KDE community, I haven’t been actively developing on KDE or Qt lately (changed jobs), but I miss you guys.