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
invisible cursor when used with UltraVNC server 1.3.4.1 #1335
Comments
I tested previous releases, and this worked fine throough 1.10.1. It is broken in 1.11.0. I guess somebody should run a git bisect. Maybe I will get time to do that... |
I ran git bisect on it. Here is the offending commit:
vncviewer/Viewport.cxx | 9 ++++++--- |
Reverting that patch fixes the problem. Is that patch beneficial in other scenarios? |
Yes, that change is needed to avoid double cursors for servers that do not support local cursors. I'm afraid what you are seeing indicates a bug in UltraVNC. It's something we've seen before in that the server doesn't send over the cursor until the first time the cursor changes. So I'm afraid you'll have to report this issue to UltraVNC and see if they can come up with a fix. Until then, the workaround we have is the setting "Show dot when no cursor". |
Thanks for the response. FYI, the "show dot when no cursor" setting does not work when set from the option menu after starting vncviewer. The cursor remains invisible. However, if one invokes vncviewer with the -DotWhenNoCursor option, that does seem to work. I had not tried the latter previously. Why does it not work from the option menu? |
That would be a bug in that case. Let me have a look... |
I can reproduce that here, so I've added #1340. Thanks for noticing. |
You're welcome. I will try reporting this to UltraVNC. But isn't the UltraVNC server widely used? It seems to me that there should be some effort to make sure that the tigervnc viewer works with UltraVNC. Or am I the only one using UltraVNC? It feels not OK to me to put out a viewer that simply doesn't work with UltraVNC. The dot cursor is rather sucky, to use a technical term. Just not visually prominent enough. |
It is popular, but unfortunately we cannot work around this bug without breaking things for servers that are correctly implementing things. And we don't want to punish those that try their best to follow the protocol properly. UltraVNC is fortunately an active project so hopefully they can get this fixed. |
I understand your point, but there still could be a "-FixBrokenCursor" option to support UltraVNC's buggy behavior. I will try reporting to them and see if they care. I have tried many VNC clients with UltraVNC, and tigervnc is the only one that doesn't work. The realvnc client works fine, as does vinagre and remmina. So why is tigervnc the exception? Are you saying that all of those other clients are broken? |
I would guess they misbehave against servers that want server side cursors, yes. They are rare though, so it's quite possible they haven't gotten any reports for it (or don't care). And after all, we fixed it in TigerVNC fairly recently. |
I posted a message in the UltraVNC forum here: Thanks, |
Here's a patch to add a -UseLocalCursor option:
|
FYI, I created a pull request for this patch: |
FYI, I opened an UltraVNC issue on this topic here: |
@ajschorr: Can you add your code between "Insert code" feature? |
Hi, the patch is in the pull request. Are you asking me to insert the patch again here in this issue? |
Did a little research: TigerVNC support rfbEncodingXCursor/rfbEncodingRichCursor but not rfbEncodingPointerPos |
Describe the bug
I have a Linux Fedora 34 workstation with tigervnc 1.11.0 installed. When I connect to a Windows 10 Pro PC
running UltraVNC 1.3.4.1 server, the cursor/mouse is completely invisible. I tried using the beta 1.11.90 version
of the tigervnc client, and it still has the same problem. This problem has been present with past versions of
UltraVNC as well.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The cursor should be visible.
Screenshots
If applicable, add screenshots to help explain your problem.
Client (please complete the following information):
Server (please complete the following information):
Additional context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: