Skip to content
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

Wayfire wlr_virtual_pointer_v1_new_pointer_event ignores suggested seat and output #1283

Closed
kode54 opened this issue Sep 13, 2021 · 13 comments
Closed
Labels
Milestone

Comments

@kode54
Copy link
Contributor

kode54 commented Sep 13, 2021

Describe the bug
Wayfire's new virtual pointer event handler ignores the suggested seat and output parameters completely, which breaks single output pointer constraints by anyvnc.

https://github.com/any1/wayvnc/blob/master/src/main.c#L985-L987

To Reproduce
Steps to reproduce the behavior:

  1. Start Wayfire with multiple outputs.
  2. Start anyvnc on one of those outputs.
  3. Cursor is spread across all outputs.

Expected behavior
Cursor is constrained to the suggested output, or even just seat.

Wayfire version
git: e83f1f6

Notes
There are two messages for creating a new virtual pointer, one which can specify the seat it belongs to, and an extended function that can also specify the output it should belong to. AnyVNC uses the latter to constrain the client cursor to the requested output to be remoted into. Currently Wayfire ignores both of these hint variables and just treats all virtual pointers as a full surface space according to all active outputs.

Related issues
any1/wayvnc#64

@kode54 kode54 added the bug label Sep 13, 2021
@kode54
Copy link
Contributor Author

kode54 commented Sep 13, 2021

It appears Sway does listen to these members. It maps the input to the given wlr seat if a seat is specified. Output handling appears to be rather simple to handle, too, it just uses wlr_cursor_map_input_to_output to handle that part.

@mrsteve0924
Copy link
Contributor

i've been using wayfire for past 6 months and just installed wayvnc and still see this same issue you are describing.

i dont see any response here on this issue from wayfire. have you just moved on to sway? or maybe some other workaround you discovered?

@kode54
Copy link
Contributor Author

kode54 commented Oct 28, 2023

I've moved desktops multiple times, and back to Wayfire again. This appears to still be a problem.

@quadcom
Copy link

quadcom commented Aug 11, 2024

As a newbie trying to figure his way through the Linux landscape and start getting his feet wet with RPIs, it's frustrating to see an issue like this be left in this state for so long.

I set up Bookworm and wrestled through getting a kiosk mode running, only to be stumped by why the mouse movements on a VNC connection are inverted. In this current state, it is ridiculously, if not impossible, to remote in and do anything with the Pi.

Researching solutions for this for a guy with my experience level is like hunting in a dark room with a tea light whilst getting battered in a hurricane. Everything is outdated, doesn't work or doesn't apply.

It's no wonder why the Linux community hasn't taken over the desktop space from MS. With all its quirks and PIA issues, Windows still works.

/end rant

@soreau
Copy link
Member

soreau commented Aug 11, 2024

@quadcom Have you tried mapping the input device to the output as described in the wiki?

@quadcom
Copy link

quadcom commented Aug 11, 2024

@quadcom Have you tried mapping the input device to the output as described in the wiki?

I haven't the foggiest idea how that would be achieved when the problem is when using VNC to remote into the desktop of the pi. Would the input device be the system mouse? if that's the case, why is it that it works fine when a physical mouse is connected but is inverted when connecting via VNC? How would I find the name of the input if it would be identified differently when using VNC?

There are a lot of questions that need to be answered, which is difficult, especially when you have no idea which questions to ask.

Any suggestions are appreciated.

@soreau
Copy link
Member

soreau commented Aug 11, 2024

Basically, you look at the wayfire log, which is the stdout of wayfire. If it helps at all, you can run wayfire inside of wayfire, or another wayland compositor. In the log, you should be able to see the name of the inputs and outputs. You will want to start wayvnc and connect with a client so the input devices show in the log.

EDIT: You also need to run wayfire with the -d option.

@soreau
Copy link
Member

soreau commented Aug 11, 2024

I understand that you are new to all of this, so if you would like to have better support, please join us on #wayfire on libera IRC, matrix or discord. This will also help keep this thread less cluttered.

@mrsteve0924
Copy link
Contributor

Have you tried mapping the input device to the output as described in the wiki?

This worked to get my mouse working correctly with wayvnc. thanks for the tip @soreau
[input-device:wlr_virtual_pointer_v1]
output = DP-1

@quadcom
Copy link

quadcom commented Aug 12, 2024

Have you tried mapping the input device to the output as described in the wiki?

This worked to get my mouse working correctly with wayvnc. thanks for the tip @soreau [input-device:wlr_virtual_pointer_v1] output = DP-1

You, my sir, are a live saver!

@soreau soreau closed this as completed Aug 12, 2024
@mrsteve0924
Copy link
Contributor

now we just need wayvnc to support dual monitors.

@soreau
Copy link
Member

soreau commented Aug 12, 2024

now we just need wayvnc to support dual monitors.

You should be able to run a wayvnc instance per output, at least.

@steveiliop56
Copy link

@mrsteve0924 THANK YOU SO MUCH!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants