-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add org.freedesktop.portal.RemoteDesktop support #263
base: master
Are you sure you want to change the base?
Conversation
d555fcd
to
2099d31
Compare
Thanks a lot for implementing this! I just added button events: https://github.com/David96/xdg-desktop-portal-wlr/tree/remotedesktop |
Thanks. Give me another 4/5 days and I'll get back to this. |
I've successfully tested pointer movement and buttons with kdeconnect (23.04) and wayfire (on Raspberry Pi OS v5). Scrolling does seem to have some code already, but it wasn't working here. I could see dbus messages in dbus-monitor, but no scrolling happened. I started working on keyboard support, but I'm not sure if my approach is suitable as I have no experience with xkbcommon, evdev or wayland. You can find my implementation in DefaultUser@b092b2a (Edit: fixed the link to the commit) |
I've fixed the scrolling issues I mentioned in my previous comment. This also fixed some smaller issues I was experiencing (see commit message for details). |
Worked fine with my sway too (sway master/ |
I have been using @DefaultUser's fork for the past few weeks and works almost perfectly. Mouse input is perfect, but there's some keyboard functions that are wonky. The X key seems to send a Mute volume command instead of the actual letter. It is nearly there tho. I don't expect there to be much more work required. |
@tralph3 : I assume that you're using Wayfire. Wayfire uses the underlying keycodes instead of the key symbols for binds and ignores the keymap this. I think that is was planned to add an option to change this in Wayfire, but I don't know if it is already implemented. |
I use Hyprland, actually. |
I have also been using this a bit now on Hyprland and its amazing to be able to use the pointer and type something!! |
I just took a crack at implementing a more "proper" solution using libxkbcommon and had some success, all the basic keys are working as expected, though symbols are still not working. This is my first time coding in C so I would definitely want it to be checked over by someone before going forward but to get the ball rolling even more, here's what I have: Enovale/xdg-desktop-portal-wlr@11817f9 EDIT: Capital letters aren't working currently either. |
Cool that you are trying to work on it :) |
Also Im getting this warning which is treated as error by default. I had to change the compile options before being able to build.
|
It's also worth noting that the portal with my changes segfaults and crashes my compositor whenever I run it with -r or otherwise kill it and re-run it. It works fine when systemd boots it up after a reboot, though. I have no idea what's going on with that |
I also gave keyboard input a shot by simply copying a lot of code from wayvnc and mostly everything seems to work: https://github.com/David96/xdg-desktop-portal-wlr/commits/remotedesktop |
Implements #2
ToDo: