muse-sequencer / muse

MusE is a digital audio workstation with support for both Audio and MIDI
https://muse-sequencer.github.io/
Other
644 stars 69 forks source link

Plugin GUI errors on wayland #1250

Open aleixq opened 11 months ago

aleixq commented 11 months ago

Describe the bug I am using arch with kde using wayland.

Using sfizz lv2 plugin, when launching the native plugin gui I get an empty window. When using Carla plugin or other plugins, I get an empty window and the window of the plugin.


QWindow::fromWinId(): platform plugin does not support foreign windows.
QWindowContainer: embedded window cannot be null
qt.qpa.wayland: setGrabPopup called with a parent, QtWaylandClient::QWaylandXdgSurface(0x55f4edd25930) which does not match the current topmost grabbing popup, QtWaylandClient::QWaylandXdgSurface(0x55f4efee5580) According to the xdg-shell protocol, this is not allowed. The wayland QPA plugin is currently handling it by setting the parent to the topmost grabbing popup. Note, however, that this may cause positioning errors and popups closing unxpectedly because xdg-shell mandate that child popups close before parents
qt.qpa.wayland: setGrabPopup called with a parent, QtWaylandClient::QWaylandXdgSurface(0x55f4edd25930) which does not match the current topmost grabbing popup, QtWaylandClient::QWaylandXdgSurface(0x55f4efee5580) According to the xdg-shell protocol, this is not allowed. The wayland QPA plugin is currently handling it by setting the parent to the topmost grabbing popup. Note, however, that this may cause positioning errors and popups closing unxpectedly because xdg-shell mandate that child popups close before parents
/home/USER/.lv2/avldrums.lv2/
[sfizz] scale factor: 2,000000
[sfizz] The resource path of the bundle is /usr/lib/lv2/sfizz.lv2/Contents/Resources/
[sfizz] zoom factor: 1,000000
[sfizz] zoom factor: 2,000000
QWindow::fromWinId(): platform plugin does not support foreign windows.
QWindowContainer: embedded window cannot be null
[1]    121034 segmentation fault (core dumped)  muse4

Wayland cannot embed from win id. Maybe related: https://bugreports.qt.io/browse/QTBUG-93103

To Reproduce Steps to reproduce the behavior:

  1. Add a plugin with gui
  2. Try to launch native plugin gui
  3. Some fail other ones get two windows, one with plugin gui and an empty window.

Desktop (please complete the following information):

Additional context Using wayland

GraysonPeddie commented 4 months ago

Not sure if this is related, but I did start a thread over at LinuxMusicians forum regarding this bug and I probably should have submitted a new issue in GitHub. https://linuxmusicians.com/viewtopic.php?t=27080

Here's the output that I have while using Wayland:

QWindow::fromWinId(): platform plugin does not support foreign windows.
QWindowContainer: embedded window cannot be null
lo server running on 12965
The program 'muse4' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 29 error_code 3 request_code 78 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
Thread <Prefetch, id 0x718d974006c0> has SCHED_OTHER priority 0

I tried running MusE in debug mode but I'm not getting that much luck.

I'm running KDE 6 in Arch Linux. I have to switch back to Xorg for the time being.