Lmms: Unable to drag and drop anything

Created on 15 Dec 2018  路  18Comments  路  Source: LMMS/lmms

After hours and hours of searching I still couldn't find a solution...

I'm unable to drag and drop samples, instruments and everything! I can't even use LMMS this way anymore! When trying to drag and drop a sample or an instrument the cursor shows a circle with a line through it.

untitled project

Also, when I use CTRL + drag on a track (#881) LMMS crashes and shows this in the console:

QPixmap::grabWidget is deprecated, use QWidget::grab() instead
QPixmap::grabWidget is deprecated, use QWidget::grab() instead
QPixmap::grabWidget is deprecated, use QWidget::grab() instead
[1]    7742 segmentation fault (core dumped)  lmms
not our bug

Most helpful comment

I can confirm that this issue is only present in Qt 5.12. I build a simple drag/drop application and did some testing with versions. After a while I got it working on 5.12 by adding dragMoveEvent and accepting it.

So I added the following code and it worked like a charm again.

src/gui/TrackContainerView.cpp

void TrackContainerView::dragMoveEvent( QDragMoveEvent * _dme )
{
    _dme->accept();
}

include/TrackContainerView.h

virtual void dragMoveEvent( QDragMoveEvent * _dme );

All 18 comments

@qjnr What version of lmms is this?
Which Qt version are you using?
What OS/version do you use?

% lmms -v                                                                     ~
LMMS 1.2.0-rc7
(Linux x86_64, Qt 5.11.2, GCC 8.2.1 20180831)

Copyright (c) 2008-2018 LMMS Developers

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.

Try "lmms --help" for more information.

My OS is Arch Linux

Found a similar case in the lmms support channel on discord.

stormy Last Thursday at 11:19 AM
ok for some reason i can no longer drag & drop instruments into the song editor
cursor is constantly in the "not-allowed" state
right-clicking on instrument presets -> open in new instrument-track seems to work
but dragging still doesn't
stormy Last Thursday at 2:37 PM
fixed by downgrading to qt5-base-5.11.2-3

The user stormy is also on Arch Linux.

Running Arch linux 4.18.16, Wine 3.20

I'm also on Arch, I don't experience this. But I did a minimal install of Arch and did setup the desktop enviroment myself (fluxbox). I tried latest LMMS from Arch package manager.
LMMS 1.2.0-rc7 (Linux x86_64, Qt 5.11.2, GCC 8.2.1 20180831)
wine-3.21
4.19.4-arch1-1-ARCH #1 SMP PREEMPT Fri Nov 23 09:06:58 UTC 2018 x86_64 GNU/Linux

Thank you! I resolved the issue by downgrading Qt!

It looks like all they (Arch team) need to do may be rebuilding the lmms package but it's currently failing.

FYI Compilation succeeded after downgrading Wine to 3.20, but I am still unable to drag & drop instruments.

QT-base version is 5.12.

CTRL Dragging does not cause crashes. No console output is generated when LMMS is ran from the terminal.

Recompiled with wine 3.20, drag-and-drop still doesn't function - so this issue should be re-evaluated if it relates to QT 5.12 rather than arch specifically?

Can you try if it's ok when you add -DWANT_VST=OFF flag?

Can you try if it's ok when you add -DWANT_VST=OFF flag?

Did a clean compile using

cmake .. -DWANT_VST=OFF
make -j6

Build succeeded but I was still unable to drag & drop instruments into the song editor.

$ ./lmms -v
LMMS 1.2.0-rc7.391
(Linux x86_64, Qt 5.12.0, GCC 8.2.1 20181127)

$ wine --version   
wine-4.0-rc2

Is anybody able to build & test LMMS with QT 5.12 on a non-arch machine and see if the same regression stands?

If you haven't cleared your pacman cache you could do pacman -U /var/cache/pacman/pkg/wine-3.21-1-x86_64.pkg.tar.xz to downgrade wine to wine-3.21, then compile again.

wine 3.21 build fails when -DWANT_VST=ON

In file included from /home/justas/builds/lmms/include/MidiEvent.h:28,
                 from /home/justas/builds/lmms/include/RemotePlugin.h:28,
                 from /home/justas/builds/lmms/plugins/vst_base/RemoteVstPlugin.cpp:35:
/usr/include/c++/8.2.1/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
 #include_next <stdlib.h>
               ^~~~~~~~~~
compilation terminated.
winegcc: g++ failed
make[5]: *** [CMakeFiles/RemoteVstPlugin32.dir/build.make:63: CMakeFiles/RemoteVstPlugin32.dir/home/justas/builds/lmms/plugins/vst_base/RemoteVstPlugin.cpp.o] Error 2
make[4]: *** [CMakeFiles/Makefile2:73: CMakeFiles/RemoteVstPlugin32.dir/all] Error 2
make[3]: *** [Makefile:84: all] Error 2
make[2]: *** [plugins/vst_base/CMakeFiles/RemoteVstPlugin32.dir/build.make:111: plugins/vst_base/RemoteVstPlugin32-prefix/src/RemoteVstPlugin32-stamp/RemoteVstPlugin32-build] Error 2
make[1]: *** [CMakeFiles/Makefile2:8076: plugins/vst_base/CMakeFiles/RemoteVstPlugin32.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/justas/builds/lmms/build/plugins/vst_base/RemoteVstPlugin64-prefix/src/RemoteVstPlugin64-build
[ 98%] Performing build step for 'RemoteVstPlugin64'
Scanning dependencies of target RemoteVstPlugin64
[ 50%] Building CXX object CMakeFiles/RemoteVstPlugin64.dir/home/justas/builds/lmms/plugins/vst_base/RemoteVstPlugin.cpp.o
In file included from /home/justas/builds/lmms/include/MidiEvent.h:28,
                 from /home/justas/builds/lmms/include/RemotePlugin.h:28,
                 from /home/justas/builds/lmms/plugins/vst_base/RemoteVstPlugin.cpp:35:
/usr/include/c++/8.2.1/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
 #include_next <stdlib.h>
               ^~~~~~~~~~
compilation terminated.
winegcc: g++ failed
make[5]: *** [CMakeFiles/RemoteVstPlugin64.dir/build.make:63: CMakeFiles/RemoteVstPlugin64.dir/home/justas/builds/lmms/plugins/vst_base/RemoteVstPlugin.cpp.o] Error 2
make[4]: *** [CMakeFiles/Makefile2:73: CMakeFiles/RemoteVstPlugin64.dir/all] Error 2
make[3]: *** [Makefile:84: all] Error 2
make[2]: *** [plugins/vst_base/CMakeFiles/RemoteVstPlugin64.dir/build.make:111: plugins/vst_base/RemoteVstPlugin64-prefix/src/RemoteVstPlugin64-stamp/RemoteVstPlugin64-build] Error 2
make[1]: *** [CMakeFiles/Makefile2:8039: plugins/vst_base/CMakeFiles/RemoteVstPlugin64.dir/all] Error 2
wine --version
wine-3.21

Drag & drop is still broken when building without Vestige. (built using QT 5.12)

I can confirm that this issue is only present in Qt 5.12. I build a simple drag/drop application and did some testing with versions. After a while I got it working on 5.12 by adding dragMoveEvent and accepting it.

So I added the following code and it worked like a charm again.

src/gui/TrackContainerView.cpp

void TrackContainerView::dragMoveEvent( QDragMoveEvent * _dme )
{
    _dme->accept();
}

include/TrackContainerView.h

virtual void dragMoveEvent( QDragMoveEvent * _dme );

I got this exact issue on a nearly-fresh install of Arch. Using the released 1.2.0-rc7 appimage, instead of using the package, works just fine.

I can confirm that, this bug ( Drag & drop issue ) exists on OpenSUSE Tumbleweed which uses QT-5.12 .

OpenSUSE Tumbleweed users can get patched LMMS RPM from https://build.opensuse.org/package/show/home:harish2704:branches:openSUSE:Factory/lmms

I can confirm that, this bug ( Drag & drop issue ) exists on OpenSUSE Tumbleweed which uses QT-5.12 .

OpenSUSE Tumbleweed users can get patched LMMS RPM from https://build.opensuse.org/package/show/home:harish2704:branches:openSUSE:Factory/lmms

I tried your patched version, but it still crashes. (OpenSUSE Tumbleweed)

I can confirm that, this bug ( Drag & drop issue ) exists on OpenSUSE Tumbleweed which uses QT-5.12 .

OpenSUSE Tumbleweed users can get patched LMMS RPM from https://build.opensuse.org/package/show/home:harish2704:branches:openSUSE:Factory/lmms

thanks, work like a charm for me

Was this page helpful?
0 / 5 - 0 ratings