CuarzoSoftware / Louvre

C++ library for building Wayland compositors.
MIT License
506 stars 14 forks source link

Wine `winewayland.drv` require `zwp_pointer_constraints_v1` #50

Closed Fox2Code closed 2 months ago

Fox2Code commented 5 months ago

Reference upstream Wine: https://gitlab.winehq.org/wine/wine/-/blob/master/dlls/winewayland.drv/wayland.c?ref_type=heads#L274 Reference Valve/Proton Wine: https://github.com/ValveSoftware/wine/blob/proton_9.0/dlls/winewayland.drv/wayland.c#L272

Wayland protocol: https://wayland.app/protocols/pointer-constraints-unstable-v1 https://gitlab.freedesktop.org/wayland/wayland-protocols/-/blob/main/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml

I know both Louvre and the Wine Wayland drivers are in it's early stages, I am just making this issue in advance so peoples reading on the project understand why the Wine Wayland driver currently cannot be used/tested on Louvre. (Also as a reminder that zwp_pointer_constraints_v1 is not yet implemented on Louvre 2.0.0 git branch)

I didn't opened a discussion instead cause it seemed out of place.

ehopperdietzel commented 5 months ago

Hi, thanks for pointing that out. I wasn't aware that Wine now supports Wayland, that's good to know. Regarding the pointer constraints protocol, it's scheduled to be available in Louvre 2.0.0, which is currently in development.

ehopperdietzel commented 5 months ago

Just FYI, I've finished adding the pointer constraints protocol to the 2.0.0 branch. It should work in all the examples now.

Fox2Code commented 5 months ago

@ehopperdietzel yeah, I knew when I opened the issues that you would to add it. I'll could probs snoop around and open more issues that various protocols other toolkits might be using. I think I'll take a look around and open issues if I find something interesting, worst case scenarios my issues could just be closed.

ehopperdietzel commented 5 months ago

Alright, please feel free to do so. I'm currently focused on incorporating the wlr screencopy protocol.

ehopperdietzel commented 5 months ago

The wlr-screencopy protocol is now operational (in louvre-views and louvre-weston-clone). I have recorded a video demonstration with wf-recorder, and to my surprise, it appears really smooth (since my screen is 2880x1800px). I believe the final protocol to integrate before releasing 2.0.0 will be wlr-layer-shell.

Fox2Code commented 2 months ago

This is fixed in 2.0.0 I think is issue can be closed now.

@ehopperdietzel unless you want to keep this issue open for some reason, I think you should close it.