lxqt / pcmanfm-qt

File manager and desktop icon manager (Qt port of PCManFM and libfm)
https://lxqt-project.org
GNU General Public License v2.0
424 stars 112 forks source link

Drag and drop doesn't work with Qt5.4 #100

Closed madsl closed 9 years ago

madsl commented 10 years ago

I'm at commit 1426aeb618. PCManFM-qt doesn't support drag and drop when compiled with Qt5. Tested dragging stuff into KWrite, audacious, chromium, firefox, nothing works anymore. Worked when compiled with Qt4.

pmattern commented 9 years ago

Just wondering whether this one can't be closed: on Arch Linux with latest git versions of all LXQt components including PCManFM compiled against Qt5 it's possible to transfer image or text files into LibreOffice or JuffEd flawlessly.

madsl? Any chance to verify?

madsl commented 9 years ago

I just rebuilt all of the git versions of lxqt (from qt overlay), and I built it against qt5.4 beta, still no dice. Tried dragging from PCManFM-qt into KWrite, LibreOffice Writer, Audacious, nothing works...

How can I debug these sorts of events?

madsl commented 9 years ago

I'm trying a complete system update now, it seems that some dependencies to PCManFM-qt has not been updated.

madsl commented 9 years ago

No luck yet..

pmattern commented 9 years ago

Mind posting some information about your system? OS? Version? Way you installed LXQt?

I think it's very likely that just some components weren't compiled against suitable versions of others or something similar.

madsl commented 9 years ago

I'm using gentoo ~amd64 with https://github.com/gentoo/qt overlay. Here you see the installed main packages (what packages lxqt-meta consists of):

Calculating dependencies... done!
[ebuild   R   ] lxqt-base/lxqt-about-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-config-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-qtplugin-9999::qt  0 KiB
[ebuild   R   ] app-admin/lxqt-admin-9999::qt  0 KiB
[ebuild   R   ] lxde-base/lxmenu-data-9999::qt  0 KiB
[ebuild   R    ] lxde-base/lxde-icon-theme-0.5.0-r1  4 440 KiB
[ebuild   R   ] x11-wm/openbox-9999:3  USE="nls session startup-notification svg xdg -branding -debug -imlib -static-libs" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild   R   ] lxqt-base/lxqt-runner-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-policykit-9999::qt  0 KiB
[ebuild   R    ] sys-apps/systemd-217-r2:0/2  USE="acl gudev kmod lzma pam policykit seccomp ssl -apparmor -audit -cryptsetup -curl -doc -elfutils -gcrypt -http -idn -introspection (-kdbus) -lz4 -python -qrcode (-selinux) -terminal {-test} -vanilla" ABI_X86="32 (64) (-x32)" PYTHON_SINGLE_TARGET="python2_7 -python3_3 -python3_4" PYTHON_TARGETS="python2_7 python3_4 -python3_3" 0 KiB
[ebuild   R   ] lxqt-base/lxqt-powermanagement-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-panel-9999::qt  USE="alsa clock colorpicker cpuload desktopswitch mainmenu mount networkmonitor quicklaunch screensaver sensors showdesktop sysstat taskbar tray volume -dom -kbindicator -pulseaudio -teatime -worldclock" 0 KiB
[ebuild   R   ] x11-misc/obconf-qt-9999::qt  0 KiB
[ebuild   R   ] x11-misc/pcmanfm-qt-9999::qt  0 KiB
[ebuild   R   ] media-gfx/lximage-qt-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-common-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-session-9999::qt  0 KiB
[ebuild   R   ] lxqt-base/lxqt-notificationd-9999::qt  0 KiB

Here you see all of my installed dependencies to PCManFM-qt according to the qt overlay ebuilds:

Calculating dependencies... done!
[ebuild   R    ] virtual/pkgconfig-0-r1  ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild   R    ] sys-devel/gettext-0.19.3  USE="acl cxx ncurses nls -cvs -doc -emacs -git -java -openmp -static-libs" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild   R    ] x11-libs/libxcb-1.11:0/1.11  USE="xkb -doc (-selinux) -static-libs" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild   R    ] sys-devel/make-4.1-r1  USE="nls -guile -static" 0 KiB
[ebuild   R    ] sys-apps/findutils-4.5.14-r1  USE="nls -debug (-selinux) -static" 0 KiB
[ebuild   R    ] dev-libs/glib-2.40.2:2  USE="mime xattr -debug (-fam) (-selinux) -static-libs -systemtap {-test} -utils" ABI_X86="32 (64) (-x32)" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild   R    ] dev-util/intltool-0.50.2-r1  186 KiB
[ebuild   R    ] dev-vcs/git-2.1.3  USE="blksha1 curl gpg iconv nls pcre threads webdav -cgi -cvs -doc -emacs -gnome-keyring -gtk -highlight -mediawiki -perl (-ppcsha1) -python -subversion {-test} -tk -xinetd" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild   R    ] dev-qt/qtcore-5.4.0_beta:5::qt  USE="icu -debug {-test}" 0 KiB
[ebuild   R    ] lxde-base/menu-cache-0.5.1:0/2  0 KiB
[ebuild   R    ] dev-qt/qtdbus-5.4.0_beta:5::qt  USE="-debug {-test}" 0 KiB
[ebuild   R    ] dev-qt/linguist-tools-5.4.0_beta:5::qt  USE="-debug -qml {-test}" 0 KiB
[ebuild   R    ] x11-libs/libfm-1.2.3:0/4.3.0  USE="automount udisks -debug -doc -examples -exif -gtk -vala" 0 KiB
[ebuild   R    ] dev-qt/qtgui-5.4.0_beta:5::qt  USE="accessibility gif harfbuzz jpeg opengl png udev xcb -debug -egl -eglfs -evdev -gles2 -ibus -kms {-test}" 0 KiB
[ebuild   R    ] dev-qt/qtwidgets-5.4.0_beta:5::qt  USE="opengl png xcb -debug -gles2 {-test}" 0 KiB
[ebuild   R    ] dev-qt/qtx11extras-5.4.0_beta:5::qt  USE="-debug {-test}" 0 KiB
[ebuild   R    ] dev-util/cmake-3.0.2  USE="ncurses qt5 -doc -emacs -qt4 {-test}" 0 KiB

My emerge --info:

Portage 2.2.14 (python 2.7.8-final-0, default/linux/amd64/13.0, gcc-4.9.2, glibc-2.20, 3.17.4-gentoo x86_64)
=================================================================
System uname: Linux-3.17.4-gentoo-x86_64-Intel-R-_Core-TM-_i7-3820QM_CPU_@_2.70GHz-with-gentoo-2.2
KiB Mem:    16387756 total,  12469000 free
KiB Swap:    1048572 total,   1048572 free
Timestamp of tree: Fri, 28 Nov 2014 14:30:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.3_p30-r1
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r2
dev-lang/python:          2.7.8, 3.4.2
dev-util/cmake:           3.0.2
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6-r1, 1.14.1
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.9.2
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.3-r2
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 3.17-r1 (virtual/os-headers)
sys-libs/glibc:           2.20
Repositories: gentoo fol4 qt local
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA Oracle-BCLA-JavaSE google-chrome AdobeFlash-11.x skype-4.0.0.7-copyright"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe -fno-stack-protector"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe -fno-stack-protector"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="     /etc/runlevels     /etc/conf.d     /etc/init.d     "
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/fol4 /var/lib/layman/qt /usr/portage/local"
USE="X accessibility acl aes-ni alsa amd64 apci avx bzip2 caps cli cracklib crypt cups cxx dbus dri fortran gif gudev hvm iconv icu jpeg libnotify lxqt lzma lzo mmx mmxext modules multilib ncurses nls nptl ogg opengl pam pcre png policykit qt3support qt4 qt5 readline samba session slim sse sse2 sse3 sse4 sse4_1 sse4_2 ssl ssse3 startup-notification svg systemd tcpd threads tiff udev udisks unicode upower vdpau xattr xdg xinerama xscreensaver xv xvmc zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USE_PYTHON="2.7 3.4"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC
madsl commented 9 years ago

@pmattern What Qt5 packages do you build against?

pmattern commented 9 years ago

5.3.2 as provided by Arch Linux' official repositories.

I had a look at your post yesterday. But as all I know about Gentoo is its concept I didn't find any hint at all. Yet I'd still bet it's just some nasty dependency issue...

madsl commented 9 years ago

If I run PCManFM-qt in terminal, its output is this:

$ pcmanfm-qt 

*\* (process:2716): WARNING **: The directory '~/Templates' doesn't exist, ignoring it
iconTheme "oxygen"
isPrimaryInstance
start-loading
finish-loading
start-loading
delete CachedFolderModel
delete FolderModel
finish-loading
FolderModel::supportedDropActions
FolderModel::mimeTypes
FolderModel::mimeData
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag enter
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
FolderModel::mimeTypes
FolderModel::supportedDropActions
drag move
drag leave
This is a log from when I go into a folder and try dragging an mp3 to audacious.
madsl commented 9 years ago

I haven't actually tried with Qt 5.3.2 yet, I'll do that next.

madsl commented 9 years ago

Hm, would you look at that. It works with Qt 5.3.2!

Can anyone other than me confirm that drag&drop does not work with the new Qt 5.4 RC that just came out? Would be nice to find out if this is a Gentoo/qt overlay issue or not...

pmattern commented 9 years ago

After recompiling all LXQt components against Qt 5.4.0 (release) drag & drop stopped working. Next I wanted to test whether KDE behaves the same. But the corresponding file managers don't seem to be available as versions depending on Qt 5 yet. So no, it doesn't look like a Gentoo problem. But I for one don't know how to distinguish whether the problem is specific to LXQt or in Qt 5.4.

PCMan commented 9 years ago

Confirmed. Opening files using Dnd is broken.

PCMan commented 9 years ago

Just confirmed that it is a known bug of Qt 5.4. It will be fixed in Qt 5.4.1. So it's not our issue.