Closed p0ssi closed 7 months ago
First thank you for this PR, the typo is so stupid I cannot believe I have not noticed that in 3 years.....
As for the other change, I am willing to merge this, but I am a bit confused for two reasons:
can you confirm that the addition after line 87 does actually do anything, because you are inside the QVNCWidgetGL
class which is not exposed by this module default import:
https://github.com/zocker-160/pyQVNCWidget/blob/68ab6de91d3a254b8c72dcf944a0b72d1888c00f/qvncwidget/__init__.py#L1
If I understood it correctly, according to RFC6143 Section 7.5.2
Pixel data may always be sent in raw encoding even if not specified explicitly here.
sounds to me that this explicit call should not be necessary.
Can you confirm that when using the QPA VNC plugin that the communication just stops and no error is logged (like "Unsupported encoding received")?
ok after some testing I can confirm that QPA VNC does indeed require sending of the encodings package for some reason.
I will however refactor this part of the code a bit, because I think this implementation detail should not be exposed to the Widget class itself, so it will carry over to any other custom widget implementation as well.
Thank you!
Feel free to revise as needed. Looks like it was my turn to make a stupid mistake in misplacing a single-line change.
The RFC makes clear statement that the raw encoding must be always supported. I'd primarily blame Qt interpretation.
I think the old filosophy in implementing protocols applies here as well - you should be absolutely strict on what you do, but be prepared to take whatever crap the other end thows at you.
Agreed, I need to check QT source of the VNC implementation and report an issue if they still have it that way in their current master branch.
(This is just a minor issue though compared to what nonsense RealVNC is pulling with version 5.x.)
Your and a few additional changes are now available as 0.3.4 (PyPi just got updated as well),
While connecting to a Qt5 application redirected to Qt5 QPA VNC server plugin, it turned out that the server refuses to transmit FramebufferUpdate messages unless SetEncodings is sent.
Additionally, VNC plugin reporting version 3.3 revealed a typo in the KNOWN_VERSIONS list