Ubuntu 23.04 Drag'n Drop not allowed

It used to work with no problems, suddenly when trying to drag’n drop items it shows a “Not Allowed” sign.
I can do right click and load selected files, it works on file browser pane but moving songs from one track to another with drag’n drop not working and can’t find another way to do it

Here is the debug log:

D: 14:49:59,062 /usr/lib/picard/picard/tagger.__init__:245: Starting Picard from '/usr/lib/picard/picard/tagger.py'
D: 14:49:59,062 /usr/lib/picard/picard/tagger.__init__:246: Platform: Linux-6.3.1-060301-generic-x86_64-with-glibc2.37 CPython 3.11.2
D: 14:49:59,062 /usr/lib/picard/picard/tagger.__init__:248: Versions: Picard 2.8.5, Python 3.11.2, PyQt 5.15.9, Qt 5.15.8, Mutagen 1.46.0, Discid discid 1.1.0 (compat layer from python-libdiscid 2.0.2), libdiscid 0.6.2, astrcmp C, SSL OpenSSL 3.0.8 7 Feb 2023
D: 14:49:59,062 /usr/lib/picard/picard/tagger.__init__:249: Configuration file path: '/home/payam/.config/MusicBrainz/Picard.ini'
D: 14:49:59,062 /usr/lib/picard/picard/tagger.__init__:251: User directory: '/home/payam/.config/MusicBrainz/Picard'
D: 14:49:59,062 /usr/lib/picard/picard/tagger.__init__:252: System long path support: True
D: 14:49:59,062 /usr/lib/picard/picard/i18n.setup_gettext:106: Using locale 'en_US.UTF-8'
D: 14:49:59,063 /usr/lib/picard/picard/i18n._load_translation:85: Loading gettext translation for picard, localedir='/usr/share/locale'
D: 14:49:59,063 /usr/lib/picard/picard/i18n._load_translation:85: Loading gettext translation for picard-countries, localedir='/usr/share/locale'
D: 14:49:59,063 /usr/lib/picard/picard/i18n._load_translation:88: [Errno 2] No translation file found for domain: 'picard-countries'
D: 14:49:59,063 /usr/lib/picard/picard/i18n._load_translation:85: Loading gettext translation for picard-attributes, localedir='/usr/share/locale'
D: 14:49:59,063 /usr/lib/picard/picard/i18n._load_translation:88: [Errno 2] No translation file found for domain: 'picard-attributes'
D: 14:49:59,063 /usr/lib/picard/picard/i18n.setup_gettext:123: _ = <bound method GNUTranslations.gettext of <gettext.GNUTranslations object at 0x7f1aec90bc50>>
D: 14:49:59,063 /usr/lib/picard/picard/i18n.setup_gettext:124: N_ = <function <lambda> at 0x7f1af9f77740>
D: 14:49:59,063 /usr/lib/picard/picard/i18n.setup_gettext:125: ngettext = <bound method GNUTranslations.ngettext of <gettext.GNUTranslations object at 0x7f1aec90bc50>>
D: 14:49:59,063 /usr/lib/picard/picard/i18n.setup_gettext:126: gettext_countries = <bound method NullTranslations.gettext of <gettext.NullTranslations object at 0x7f1aec90d850>>
D: 14:49:59,063 /usr/lib/picard/picard/i18n.setup_gettext:127: gettext_attributes = <bound method NullTranslations.gettext of <gettext.NullTranslations object at 0x7f1aec90d810>>
D: 14:49:59,063 /usr/lib/picard/picard/i18n.setup_gettext:128: pgettext_attributes = <bound method NullTranslations.pgettext of <gettext.NullTranslations object at 0x7f1aec90d810>>
D: 14:49:59,087 /usr/lib/picard/picard/webservice/__init__._network_accessible_changed:365: Network accessible requested: 1, actual: 1
D: 14:49:59,096 /usr/lib/picard/picard/webservice/__init__.set_cache:387: NetworkDiskCache dir: '/home/payam/.cache/MusicBrainz/Picard/network/' current size: 90.0 MB max size: 100 MB
D: 14:49:59,097 /usr/lib/picard/picard/pluginmanager.load_plugins_from_directory:219: Looking for plugins in directory '/usr/lib/picard/picard/plugins', 0 names found
D: 14:49:59,097 /usr/lib/picard/picard/pluginmanager.load_plugins_from_directory:219: Looking for plugins in directory '/home/payam/.config/MusicBrainz/Picard/plugins', 0 names found
D: 14:49:59,101 /usr/lib/picard/picard/ui/playertoolbar.__init__:90: Internal player: QtMultimedia available, initializing QMediaPlayer
D: 14:49:59,113 /usr/lib/picard/picard/ui/playertoolbar.__init__:97: Internal player: available, QMediaPlayer set up
D: 14:49:59,225 /usr/lib/picard/picard/tagger.main:1089: Looking for Qt locale en_US in /usr/share/qt5/translations
I: 14:49:59,226 /usr/lib/picard/picard/browser/browser.start:121: Starting the browser integration (127.0.0.1:8000)
D: 14:49:59,260 /usr/lib/picard/picard/config.event:255: Config file update requested on thread 139753917448256
D: 14:49:59,421 /usr/lib/picard/picard/webservice/ratecontrol.get_delay_to_next_request:113: ('musicbrainz.org', 443): First request
D: 14:49:59,421 /usr/lib/picard/picard/webservice/ratecontrol.increment_requests:138: ('musicbrainz.org', 443): Incrementing requests to: 1
D: 14:50:00,742 /usr/lib/picard/picard/webservice/ratecontrol.decrement_requests:146: ('musicbrainz.org', 443): Decrementing requests to: 0
D: 14:50:00,742 /usr/lib/picard/picard/webservice/__init__._handle_reply:540: Received reply for https://musicbrainz.org/ws/2/collection: HTTP 200 (OK) 
D: 14:50:00,742 /usr/lib/picard/picard/webservice/__init__._handle_reply:553: Response received: {'collection-count': 3, 'collections': [{'type': 'Maybe attending', 'id': '17924b0a-25ec-3f58-97e9-bbfc2d06886d', 'entity-type': 'event', 'event-count': 0, 'name': 'Maybe attending', 'type-id': 'ca023ecf-a230-39f4-a252-a8d3b4d59c24', 'editor': 'papampi'}, {'release-count': 0, 'editor': 'papampi', 'type-id': 'c26c6ec4-17f0-32de-95c5-fa724dbdb308', 'name': 'owned', 'id': '3d826b47-c113-44cc-9640-ac6235932474', 'type': 'Owned music', 'entity-type': 'release'}, {'id': 'e519531e-8c5c-327a-af4a-4cb52ed28df0', 'entity-type': 'event', 'type': 'Attending', 'name': 'Attending', 'event-count': 0, 'type-id': 'de6aedf5-73c2-3f7c-88f8-e128c189a205', 'editor': 'papampi'}], 'collection-offset': 0}
D: 14:50:00,742 /usr/lib/picard/picard/collection.request_finished:142: User collections: [('3d826b47-c113-44cc-9640-ac6235932474', 'owned')]
D: 14:50:00,742 /usr/lib/picard/picard/webservice/ratecontrol._out_of_backoff:222: ('musicbrainz.org', 443): oobackoff; delay: 1000ms -> 1000ms; slow start; window size 1.000 -> 2.000```

Odd issue. Not good idea currently. So this is when dragging inside Picard, right, and not when dragging files from outside Picard into the Picard window? Is this under Wayland or X11?

The debug log is a bit odd, as it shows only the startup. No releases or files got loaded during that debugging. Maybe you can share a short screencast of the issue?

Does moving the files elsewhere work, e.g. from right pane to left pane or from unclustered to clustered?

Yes, its inside the Picard.
Nothing works by drag’n drop.
Picard, Drag’n Drop

Edit: No idea why video not showing the “Not Allowed” small icon when trying drag’n drop

Ok, that’s indeed strange. Is this under the default GNOME desktop environment or something else?

You said it worked till recently. Has something specific changed in your system setup since then?

It could be related to Wayland somehow. In the past there were several issues with drag and drop and Qt5 related to wayland. If you are running GNOME as a Wayland session then try to start Picard either with:

QT_QPA_PLATFORM=wayland picard

or with:

QT_QPA_PLATFORM=xcb picard

The first will force Qt to use the Wayland backend, the second one will force the X11 backend. Should the first complain that the backend is not available you need to install the libqt5waylandclient5 package I think. Does one of those way work to run Picard?

Finally you could try running entirely in the X11 session. In the Ubuntu default install you can switch the session being used in the login screen (there is a small cog icon I think, don’t want to log out right now to check :slight_smile: ). Probably you don’t want to keep it that way, but it could help narrow down the issue and provide a workaround.

3 Likes

It’s on X11

payam@payam-desktop:~$ echo $XDG_SESSION_TYPE
x11

It used to work, no idea when this started.
I think last used it a month ago, surely after upgrade to 23.04
just fired up Picard and noticed the problem

1 Like

So …
Switched to wayland and its working there but not on X11

1 Like

Are you using Gnome/mutter?
There is a report that matches what your are experiencing, see Drag&Drop not working in Qt-Applications (#2715) · Issues · GNOME / mutter · GitLab

3 Likes

Nope, no mutter

payam@payam-desktop:~$ inxi -Gxx
Graphics:
  Device-1: NVIDIA GP104 [GeForce GTX 1070] vendor: ASUSTeK driver: nvidia
    v: 525.105.17 arch: Pascal pcie: speed: 2.5 GT/s lanes: 16 ports:
    active: none off: DP-2 empty: DP-1, DVI-D-1, HDMI-A-1, HDMI-A-2
    bus-ID: 01:00.0 chip-ID: 10de:1b81
  Display: x11 server: X.Org v: 1.21.1.7 with: Xwayland v: 22.1.8
    compositor: gnome-shell v: 44.0 driver: X: loaded: nvidia
    unloaded: fbdev,modesetting,nouveau,vesa gpu: nvidia,nvidia-nvswitch
    display-ID: :1 screens: 1
  Screen-1: 0 s-res: 3840x1200 s-dpi: 92
  Monitor-1: DP-2 note: disabled model: ASUS XG43V res: 3840x1200 dpi: 93
    diag: 1102mm (43.4")
  API: OpenGL v: 4.6.0 NVIDIA 525.105.17 renderer: NVIDIA GeForce GTX
    1070/PCIe/SSE2 direct-render: Yes

That’s a bummer. But I can confirm, same for me. With the X11 Qt backend (no matter if under X11 or Wayland desktop session) drag and drop stops working. The issue linked above seems to be the issue.

Mutter is the GNOME window and composition manager. So yes, when you run gnome-shell it’s mutter being used :slight_smile:

1 Like

Gnome Shell depends on Gnome mutter: gnome-shell/meson.build at e1145defa9b27839607c26cf9962b938d7eef8f0 · GNOME/gnome-shell · GitHub

1 Like

Just a heads up - this bug was fixed by GNOME upsteam with Mutter 44.2, is live in Fedora 38 as of yesterday, and should land in Ubuntu soon if not already.

3 Likes

GNOME 44.2 is now in Ubuntu 23.04 and drag and drop under X11 works for me again.

4 Likes