It's time for some #wlmirror development insights!

I've been having a weird issue with the experimental XDG Portal backend for almost a year now: When importing DMA-BUFs from the XDG Portal backend, the screen stays black. No idea what the issue is.

1/x

I have experimented a lot with Wayland, EGL, screencopy, and DMA-BUFs in the last few days (https://github.com/Ferdi265/wayland-experiments), and I was able to create a demo application that uses the same way to create a DMA-BUF that xdg-desktop-portal-wlr is using and imports and renders it correctly with EGL (screencopy_dmabuf_egl.c)

2/x

GitHub - Ferdi265/wayland-experiments: very very basic wayland example code

very very basic wayland example code. Contribute to Ferdi265/wayland-experiments development by creating an account on GitHub.

GitHub

Now, I have hacked that code into #wlmirror and basically frankenstein'd it into the XDG Portal backend and it does import and render the DMA-BUF correctly! (just in a separate window, see screenshots)

3/x

The final step is figuring out what the heck is different between the regular wl-mirror code and the demo that makes it not work. Fingers crossed that this won't take another year 🤞

4/4