brummer10 / XUiDesigner

A WYSIWYG LV2 GUI/plugin creator tool
BSD Zero Clause License
100 stars 3 forks source link

Not running on Wayland #15

Closed luciorgomes closed 1 year ago

luciorgomes commented 1 year ago

I'm using Gnome (Wayland) as my default DE. Xuidesigner don't run on it (just logging in Xorg I can load the app):

[luciorg@lucio-inspiron5547 ~]$ xuidesigner X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 73 (X_GetImage) Serial number of failed request: 1610 Current serial number in output stream: 1610

brummer10 commented 1 year ago

Hi I never got wayland to run on my machine, maybe because I use the proprietary NVidea driver. However, thanks for reporting, I guess I know were it crash and have implemented a fix for it. Please let me know if that works.

luciorgomes commented 1 year ago

It's working. Thanks!

luciorgomes commented 1 year ago

I got another error related to Wayland. When I try to change the color in the "cairo-color-mixer" window it crashes (closing the program). A similar error is displayed (on X11 it does not happen):

[luciorg@lucio-inspiron5547 ~]$ xuidesigner X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 73 (X_GetImage) Serial number of failed request: 12789 Current serial number in output stream: 12789

brummer10 commented 1 year ago

Seems that XGetImage isn't supported by xwayland at all. So I've implemented a guard for all calls to it. Properly that means that the color chooser wouldn't work under wayland, but it shouldn't crash now any-more. Please let me know your findings as I can't really test it.

brummer10 commented 1 year ago

I've implemented a fallback function for the color chooser. So when XGetImage fail it will take the color direct from the surface. That means, on wayland it will works only in the color circle, not possible to pick a color from elsewhere on the desktop.

luciorgomes commented 1 year ago

It worked!

brummer10 commented 1 year ago

Nice. So I'll close this issue.